我想搜索MySQL数据库以匹配用户传递的关键字。我听说使用 LIKE
是最快的选择,但找不到在 PHP 代码中使用 LIKE 的完整简单查询的示例。
这就是我要说的:
$value = 'Fire';
$result = mysql_query("SELECT * FROM effects WHERE title LIKE 'value%'");
我知道数据库中有一行以 Fire
作为标题,但查询返回null
.
有人可以给我一个如何执行MySQL类搜索或替代按关键字查找行的示例吗?
谢谢。
您需要添加变量的美元符号:
$result = mysql_query("SELECT * FROM effects WHERE title LIKE '$value%'");
您在变量 value
之前缺少$
。
您的查询应如下所示
$value = 'Fire';
$result = mysql_query("SELECT * FROM effects WHERE title LIKE '$value%'");
说有像My Fire Effect
这样的标题.您不希望在搜索结果中显示此内容吗?如果您也想在结果中显示My Fire Effect
那么您应该在$value之前使用%
$value = 'Fire';
$result = mysql_query("SELECT * FROM effects WHERE title LIKE '%$value%'");
希望这对你有帮助。
有关差异,请参阅带有实时示例的演示
请注意,演示中的第一个查询返回我 5 行,但第二个查询返回我 8 行,这是完美的。