我在我的网站上有一个搜索栏,并构建一个页面,以显示在搜索中具有LIKE描述和LIKE部分名称的部分。mysql其中like和statment不起作用
is_sold永远是1或0
part_status的一个int总是会批准了1个网页,搜索,或类别名单上显示时。
这里是我的sql语句
$result = mysql_query("
SELECT *
FROM part
WHERE part_name LIKE '%" . $get_search . "%'
OR part_desc LIKE '%" . $get_search ."%'
AND is_sold = 0
AND part_status = 1
ORDER BY id DESC
")
它列出了部分没有问题,如果他们批准,不管他们出售与否。
遇到的问题Im为,并在此我为“is_sold”(设置INT数字到底是出售部分和“part_status”(如果部分由管理员批准)。
[**请不要在新代码**中使用'mysql_ *'函数](http://bit.ly/phpmsql)。他们不再被维护[并且被正式弃用](http://j.mp/XqV7Lp)。看到[**红框**](http://j.mp/Te9zIL)?学习[*准备的语句*](http://j.mp/T9hLWi),并使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [这篇文章](http://j.mp/QEx8IB)将帮助你决定哪个。如果你选择PDO,[这里是一个很好的教程](http://j.mp/PoWehJ)。 – esqew 2014-10-28 14:10:21
我想你需要在适当的'OR'标准周围添加括号。 – sgeddes 2014-10-28 14:13:45
感谢@esqew的教程链接,目前它在我的本地主机上,但是当我切换到公共场合时,我一定会转换为准备好的语句。 – 2014-10-28 14:14:08