使用LIKE搜索不返回预期结果

时间:2013-08-01 22:59:24

标签: php mysql sql-like

我正在使用PHP和LIKE方法搜索MySQL数据库,一切都很有效,除非我输入#_&之类的字符,它会返回所有行即使没有任何行具有任何此类特征。

/"'等其他字符效果很好,只显示包含这些字符的行。

以下代码是我用来获取这些结果的代码。

mysql_query("SELECT * FROM articles WHERE title LIKE '%$value%'")

2 个答案:

答案 0 :(得分:2)

_是一个特殊字符,表示任何单个字符,与%表示任意多个字符序列的方式相同

\是转义字符,如果您要搜索文字百分比字符\%,下划线\_或斜杠\\(除非NO_BACKSLASH_ESCAPES,模式已启用)

修改

有关详细信息,请参阅manual

答案 1 :(得分:-4)

您可以尝试使用mysql_real_escape_string()功能。

http://php.net/manual/tr/function.mysql-real-escape-string.php