jQuery와 함께 검색 제안을 제공하는 PHP 스크립트가 있습니다. 그것은 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>
난 당신이 내가 설명하기 위해 노력하고 이해할 수 있기를 바랍니다.
가'정말 SQL 주입 안전 real_escape_string'인가요? –
@Uwe :'real_escape_string'은 SQL 주입 안전을 제공합니다. 그래, 네. (PDO가 더 좋긴하지만) –