MySQL/PHP 将条件运算符(<=、>=)与 WHERE 子句中的字符串连接起来

MySQL/PHP Concatenating condition operator (<= , >=) with string in WHERE clause

这是我的第一个 post,所以我会尽力说清楚。 这是我的问题:

假设您有一个包含运算符的变量: 例如,$var = "<="; 你很想这样做:

$query = "SELECT * FROM table WHERE".$attr." ".$var." ".$value;

(其中 $value 是一个整数), 我可以这样做吗? 如是, 我在我的 PHP 脚本中尝试过同样的事情,但它不起作用! ($var = "=" 除外)尽管它在 phpmyadmin 中确实有效。 (我的代码有点长,但如果你想要我可以 post 它)。 非常感谢任何帮助。

你在 WHERE 和 $attr 之间没有任何 space,你可能会通过这样做得到你想要的效果:

$query = "SELECT * FROM table WHERE ".$attr." ".$var." ".$value;

或者只是

$query = "SELECT * FROM table WHERE $attr  $var $value";

尝试将 $query 回显到浏览器,并将其复制并粘贴到 phpmyadmin 中。