查询“... WHERE $ string”... $ string ='b5KlL4znM'但查询返回空,除非“...... WHERE'b5KlL4znM'”

时间:2012-07-11 17:16:37

标签: php mysql sql string alphanumeric

我试图从我的表中获取一些信息,但是当我这样调用它时,查询返回空:

$varchar_string = mysqli_real_escape_string($link, $_GET['code']); //the code is b5KlL4znM in this scenario

mysqli_query($link, "SELECT * FROM table WHERE code = $varchar_string");

该字符串是字母数字,由用户提交,因此我在进行查询之前将其转义。

现在,如果我进行此查询

mysqli_query($link, "SELECT * FROM table WHERE code = 'b5KlL4znM'");

它工作正常,但这不是很有活力。

当我搜索这个问题时,我没有得到很多结果,而且我找不到那些看似相关的答案。

2 个答案:

答案 0 :(得分:4)

你是否需要在字符串周围加上引号?

mysqli_query($link, "SELECT * FROM table WHERE code = '$varchar_string'");

答案 1 :(得分:3)

您需要将变量包含在引号中。

mysqli_query($link, "SELECT * FROM table WHERE code = '$varchar_string'");