php / postgres - 在浏览器上打印问题

时间:2011-07-05 22:38:35

标签: php postgresql printing echo var-dump

我正在开发一个用户/登录系统,其中我有一个小的PHP函数,当满足某些条件时(即当用户名和密码匹配时)更新数据库中的用户值。但是,登录页面上似乎没有任何结果。我正在使用Ubuntu并在终端上显示变量$ pk_user为空。问题是我想要打印pk_user的值但是echo,print_r,var_dump什么都不打印在浏览器上。我有CSS样式,那会是这个原因吗?功能是:

/* updateUserField - Updates a field, specified by the field parameter,
   in the user's row of the database, given the pk_user */

public function updateUserField($userkey, $field, $value)
{
    $q = "UPDATE users SET ".$field." = '$value' WHERE pk_user = '$userkey'";

    pg_query($this->link,$q);

    if(pg_last_error($this->link)) {
        return -1;
    }

    return 1;
}

并且命令行上的错误消息是:

  

错误:无效的输入语法   整数:“”字符82声明:   UPDATE用户SET usr_userid =   '9bc44a3b3b0b911f7f932f06ab7d7b5c'   在哪里pk_user =''

当然我用pg_connect连接到DB,那部分工作正常。

1 个答案:

答案 0 :(得分:1)

调用函数时,您没有提供整数作为$userkey变量。因此,查询失败。检查实际调用函数的代码,以确定未传递整数的原因。