Php Mysql和WHERE选择
我已经做了一个选择,但不能让它和WHERE-LIKE函数一起工作。下面这行有什么问题Php Mysql和WHERE选择,php,mysql,Php,Mysql,我已经做了一个选择,但不能让它和WHERE-LIKE函数一起工作。下面这行有什么问题 $result = mysql_query("SELECT * FROM games WHERE soort='nieuws' AND gamenaam='$spelnaam' AND platform LIKE '%wiiu%' AND ORDER BY id DESC"); 直到我加上 AND platform LIKE '%wiiu%' “平台”列包含具有来自选择框表单的多个值的单元格。所以它写道,w
$result = mysql_query("SELECT * FROM games WHERE soort='nieuws' AND gamenaam='$spelnaam' AND platform LIKE '%wiiu%' AND ORDER BY id DESC");
直到我加上
AND platform LIKE '%wiiu%'
“平台”列包含具有来自选择框表单的多个值的单元格。所以它写道,wiiu、ps4、xbox360、pc等等……一定很简单,但我尝试了一百万次……删除
和之前的按顺序
$result = mysql_query("SELECT * FROM games WHERE soort='nieuws' AND gamenaam='$spelnaam' AND platform LIKE '%wiiu%' AND ORDER BY id DESC");
应该是
$result = mysql_query("SELECT * FROM games WHERE soort='nieuws' AND gamenaam='$spelnaam' AND platform LIKE '%wiiu%' ORDER BY id DESC");
$result = mysql_query("SELECT * FROM games WHERE soort='nieuws' AND gamenaam='$spelnaam' AND platform LIKE '%wiiu%' ORDER BY id DESC");
在结尾处有额外的“和”应该是这样的:
$result = mysql_query("SELECT * FROM games WHERE soort='nieuws' AND gamenaam='$spelnaam' AND platform LIKE '%wiiu%' ORDER BY id DESC");
有一个额外的和,它应该是:
在ORDER BY
语句之前不应该有和
同样,我感到有必要要求您考虑使用mysqli
或PDO
而不是mysql
函数,因为mysql
已被弃用。您确实不应该在字段中使用逗号分隔的值。实际上,您提供了一个很好的示例,说明了为什么不在其中添加控制台名称。如果你在寻找与原始Wii相关的东西呢?你会有类似于的东西,比如“%wii%”
,对吗?这也会返回所有与WiiU相关的项目,因为“WiiU”也类似于“%wii%”
正确的方法是创建并加入一个链接表。请不要使用mysql,因为它已被弃用,请改用mysqli或PDO
参考
并将查询更改为
SELECT * FROM games
WHERE soort='nieuws'
AND gamenaam='$spelnaam'
AND platform LIKE '%wiiu%'
ORDER BY id DESC"
这些单元格是否与where
子句中的其余条件匹配?不返回任何内容的最可能原因是数据中没有匹配项。按顺序删除和之前
SELECT * FROM games
WHERE soort = 'nieuws'
AND gamenaam = '$spelnaam'
AND platform LIKE '%wiiu%'
ORDER BY id DESC
SELECT * FROM games
WHERE soort='nieuws'
AND gamenaam='$spelnaam'
AND platform LIKE '%wiiu%'
ORDER BY id DESC"