Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php sql查询返回0时对非对象错误的成员函数的调用_Php_Sql_Pdo - Fatal编程技术网

Php sql查询返回0时对非对象错误的成员函数的调用

Php sql查询返回0时对非对象错误的成员函数的调用,php,sql,pdo,Php,Sql,Pdo,我使用php的PDO进行了以下查询 $STH = $DBH->query(' SELECT COUNT(*) AS hits FROM table WHERE column = "' .$variable. '" '); 表为空,这与错误有关吗? 它是否与点击次数为0有关 我正在从MSSQL数据库中选择数据。这很简单,意味着$DBH不是一个对象,因此没有连接,因此结果为0 您应该首先创建$DBH对象,然后运行查询方法问题在于使用单引号和双引号: $STH = $DBH->q

我使用php的PDO进行了以下查询

$STH = $DBH->query('
    SELECT COUNT(*) AS hits FROM table WHERE column = "' .$variable. '"
');
表为空,这与错误有关吗?
它是否与点击次数为0有关


我正在从MSSQL数据库中选择数据。

这很简单,意味着
$DBH
不是一个对象,因此没有连接,因此结果为0


您应该首先创建
$DBH
对象,然后运行
查询
方法

问题在于使用单引号和双引号:

$STH = $DBH->query("
    SELECT COUNT(*) FROM table WHERE column = '" .$variable. "'
");

我使用了单引号
,因此包含单引号的输入仍然有效。这不适用于MSSQL命令。

您能发布完整的相关代码吗?初始化
$DBH
类对象的位置?
$DBH
不是调用
查询
方法的有效对象。如果查询返回0与否没有区别。好的,我已经解决了它,我将所有
'
替换为
,反之亦然。我认为这是一个sql问题。该死的,现在我必须对所有这样的实例都这样做。我使用了
,因此我可以输入包含字符
的输入,但我必须找到另一种方法来实现这一点;)我有一个名为“db_connect.php”的文件,我将所有页面链接到该文件。$DBH对象已在此处分类。我知道它可以工作,因为其他sql查询和准备好的语句工作得很好$DBH中使用大写字母吗?是的,如果我删除上述代码,其他查询将正常运行