我有一个PHP脚本,它可以与jQuery一起工作来提供搜索建议。它从MySQL数据库中提取结果。但是,我只想要5个结果一次显示用户输入的字母,但似乎所有结果都显示出来。为什么会这样呢?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 s WHERE name LIKE '%" . $queryString . "%'");
if($query){
while ($result = $query ->fetch_object()){
echo '<a href="/search/'.$result->name.'/1/">';
$name=$result->name;
echo ''.$name.'';
}
}
}
}
?></p>
我希望你能明白我试图描述。
那是'real_escape_string'真的SQL注入安全的吗? – 2011-05-15 10:10:58
@Uwe:'real_escape_string'提供了SQL注入安全性。所以,是的。 (虽然PDO更好。) – 2011-05-21 16:00:14