Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.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
mySQL中包含mySQL等式的PHP变量_Php_Mysql_Variables - Fatal编程技术网

mySQL中包含mySQL等式的PHP变量

mySQL中包含mySQL等式的PHP变量,php,mysql,variables,Php,Mysql,Variables,下面是一个mySQL查询,包含初始查询,后跟一些附加条件 mysql_query("SELECT * FROM electors WHERE telephone > 0 AND last_known_voting_intention = 'P' OR last_known_voting_intention = 'A'"); 我想从另一个页面传递附加条件,并将其包含在PHP变量中 $criteria = "AND last_known_voting_intention = 'P' OR l

下面是一个mySQL查询,包含初始查询,后跟一些附加条件

mysql_query("SELECT * FROM electors WHERE telephone > 0 AND last_known_voting_intention = 'P' OR last_known_voting_intention = 'A'");
我想从另一个页面传递附加条件,并将其包含在PHP变量中

$criteria = "AND last_known_voting_intention = 'P' OR last_known_voting_intention = 'A'";
然后如何将其包含在mySQL查询中

mysql_query("SELECT * FROM electors WHERE telephone > 0 $criteria");

mysql_query("SELECT * FROM electors WHERE telephone > 0 ".$criteria);

这两个似乎不起作用。

您的原始查询看起来应该起作用,但如果这是PHP的奥秘之一,我也不会感到惊讶

你能做的是:

$sql = "SELECT * FROM electors WHERE telephone > 0";
$criteria = " AND last_known_voting_intention = 'P' OR last_known_voting_intention = 'A'";

if (!empty($criteria))
{
  $sql .= $criteria; // Append it to SQL query
}

mysql_query($sql);

我想原始查询(不分离$criteria)可以正常工作吗?第一个查询可以工作吗?你知道这一点,而且优先于或,对吧?当然。)不知何故,我仍然在看这个查询,所有这些长的或红色的东西都被简单的“IN”条件所取代。我建议提交您的评论作为答复。)我将使用中的
重写$criteria。