匹配未知列

时间:2014-01-31 16:44:19

标签: php mysql search match-against

我的搜索方法有问题,我正在使用MATCH AGAINST,因为它比LIKE更好。例如,我有一个充满城市的数据库,当我在输入字段中键入城市名称(例如莫斯科)时,'where子句'中出现错误“未知列'莫斯科'”。我的数据库中有两列,city_id和city_name

enter image description here

我的sql查询看起来像这样

"SELECT city_name FROM default_cities WHERE MATCH(city_name) AGAINST($city)"

如果有人有任何建议,我将不胜感激:)

2 个答案:

答案 0 :(得分:2)

如果您发布了完整的代码,我们就可以告诉您需要针对$city添加单引号。你应该使用准备好的陈述。我也会想到你正在使用mysql_函数。这些已弃用,您应该使用PDOmysqli_

答案 1 :(得分:2)

"SELECT city_name FROM default_cities WHERE MATCH(city_name) AGAINST('$city')"

使用 $ city

的引号

修改

别忘了逃避它。 (例如“l'amour”)