我有一个看起来像这样的查询代码(是的,我知道我的输入没有被清理):
$search_query = "SELECT * FROM `comments` WHERE comment LIKE '%".$_POST['search_query']."'%";
但无论出于什么原因,当我输入'假'这个词时,我回复它,它就像这样:
SELECT * FROM `comments` WHERE comment LIKE '0.000000ake'
我真的不知道这里发生了什么。任何帮助表示赞赏。
答案 0 :(得分:0)
如果可能的话,清理输入。 还使用echo函数回显字符串。 如果我不得不猜测,%false%正在打印一个printf或sprintf函数(或类似函数),它将%f转换为不同的东西。
答案 1 :(得分:0)
试试这个:
$search_query = "SELECT * FROM `comments`
WHERE comment LIKE '%{$_POST['search_query']}%' ";
我改变了两件事:我将concat切换到花括号,你的结束报价也在第二个百分比内。