我有一个PHP搜索建议脚本,它从MySQL数据库获取结果,然后使用jQuery将它们推送到页面。在我的数据库中,我有一个每个结果排名的字段,但我想在我的PHP代码中使这个工作。我希望排名字段中数字最高的结果显示得更高。
我的PHP代码是:
<p id="searchresults"><?php
$db=new mysqli('localhost','username','password','database');
if(isset($_POST['queryString'])){
$queryString=$db->real_escape_string($_POST['queryString']);
if(strlen($queryString)>0){
$query = $db->query("SELECT * FROM search WHERE name LIKE '%" . $queryString . "%' LIMIT 10");
if($query){
while ($result = $query ->fetch_object()){
echo '<a href="/search/'.$result->name.'/1/">';
$name=$result->name;
echo ''.$name.'';
}
}
}
}
?></p>
我希望你能理解我想要描述的内容。
提前致谢,Callum
答案 0 :(得分:5)
你可以在你的SQL查询中添加'ORDER BY rank DESC'
$query = $db->query("SELECT * FROM search WHERE name LIKE '%" . $queryString . "%' ORDER BY rank DESC LIMIT 10");