我正在调用我的数据库,以便在页面上以表的形式显示。目前,我有一个名为model的字段,其中列出了不同型号的枪械。例如。(Dt-11运动,Dt-11运动左手)
我目前有一个问题,因为它不会拉出所有要求的信息。
mysql_select_db("premiumguns") or die(mysql_error());
$make ='DT-11 Sporting';
if (isset($make)) {
$query = "SELECT Serial_No, Make, Model, Gauge, Barrel_Length, Price FROM PG_inv WHERE Model like '" . $make . "' ORDER BY PG_inv.Price";
}
else
{
$query = "SELECT Serial_No, Make, Model, Gauge, Barrel_Length, Price FROM PG_inv ORDER BY PG_inv.Price";
}
$result = mysql_query($query) or die(mysql_error())据我所知,Where Model like应该拉出包含"DT-11 Sporting“的所有行,其中应该包括上面描述的"Dt-11 Sporting Left”。但是当页面加载时,只显示恰好包含"DT-11 Sporting“的字段。我是不是遗漏了什么?
提前感谢您的帮助!
发布于 2013-07-30 04:48:31
如果您不在查询中放置任何通配符,则使用=或like都无关紧要
我已经在你的搜索词的两侧添加了%%,所以它现在会搜索像"blah blah term blah blah“这样的项目。
$query = "SELECT Serial_No, Make, Model, Gauge, Barrel_Length, Price FROM PG_inv WHERE Model like '%" . $make . "%' ORDER BY PG_inv.Price";LIKE "FOO"等同于= " FOO "where asLIKE "FOO%“将表示以FOO开头的任何内容
发布于 2013-07-30 04:49:06
$query = "SELECT Serial_No, Make, Model, Gauge, Barrel_Length, Price FROM PG_inv WHERE Model like '%" . $make . "%' ORDER BY PG_inv.Price";见鬼,被打败了。
发布于 2013-07-30 04:55:45
变化
$make ='DT-11 Sporting';至
$make ='DT-11 Sporting%';https://stackoverflow.com/questions/17933842
复制相似问题