php - 如何在数据库中进行系统搜索

标签 php mysql sql

我想让系统搜索我的网站 (ADS)

$sql->mysql_query(
"SELECT * FROM ads WHERE ads_catgs='".$gettagname."' 
AND ads_Marque LIKE '%$ads_Marque%' 
OR ads_Modèle LIKE '%$ads_Modèle%' 
OR ads_Type_de_carburant LIKE '%$ads_Type_de_carburant%' 
OR ads_Année_Modèle LIKE '%$ads_Année_Modèle%' 
OR ads_Kilométrage LIKE '%$ads_Kilométrage%' 
OR ads_city='".$getcity."' 
AND ads_title LIKE '%$getsearchfor%' 
ORDER BY ads_id DESC") or die($sql->mysql_error());

这是可行的,但如果我搜索广告标题“Test”和 ads_Marque“For_Test”....它会选择任何广告标题“test”和 ads_Marque !=“For_Test”

(我很抱歉我的英语不好)

最佳答案

使用trim删除关键字前后的空格。

尝试

$sql->mysql_query("SELECT * FROM ads WHERE ads_catgs='".$gettagname."' AND ads_Marque LIKE '%".trim($ads_Marque)."%' OR ads_Modèle LIKE '%".trim($ads_Modèle)."%' OR ads_Type_de_carburant LIKE '%".trim($ads_Type_de_carburant)."%' OR ads_Année_Modèle LIKE '%".trim($ads_Année_Modèle)."%' OR ads_Kilométrage LIKE '%".trim($ads_Kilométrage)."%' OR ads_city='".$getcity."' AND ads_title LIKE '%".trim($getsearchfor)."%' ORDER BY ads_id DESC") or die($sql->mysql_error());

关于php - 如何在数据库中进行系统搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31554518/

相关文章:

include - 为什么缺少 "require"/"include"会额外调用 error_handler 一次?

c# - ASP.Net C# - 根据条件设置 MySQL 查询和参数

MySQL - 加入以逗号分隔的字段

sql - 查询适用于 Oracle 10g 但不适用于 11g?

mysql - SQL查询查找3个月的数据

mysql - SQL在同一个表中递归查找父级

php - Ajax 不适用于我的所有表单

php - 未捕获的 PDOException:PDO::__construct():php_network_getaddresses:getaddrinfo 失败:名称或服务未知

php - Swagger 不在 laravel 5.6 中发布 Assets 文件

mysql - 添加外键错误