Я использую автозаполнение, чтобы выполнить поиск в Google, в котором поисковые предложения находятся в выпадающем меню, а я набираю то, что ищу.Отсутствие вывода в автозаполнении
Выход моего кода
HTML
<td width="155" bgcolor="#999999">Client Name</td>
<td width="218" bgcolor="#999999"><input type="text" name="clientname" id="clientname" class="forinput" /></td>
сценарий
<script type="text/javascript">
$(document).ready(function() {
$("#clientname").autocomplete(
{
source:"getautocomplete.php",
minLength:1
})
});
</script>
getautocomplete.php
..databaseconnection
$term = trim(strip_tags($_GET['term']));//retrieve the search term that autocomplete sends
$qstring = "SELECT clientname FROM client WHERE clientname LIKE '%".$term."%'";
$result = mysql_query($qstring);//query the database for entries containing the term
while ($row = mysql_fetch_array($result,MYSQL_ASSOC))//loop through the retrieved values
{
$row['clientname']=htmlentities(stripslashes($row['clientname']));
$row_set[] = $row;//build an array
}
echo json_encode($row_set);//format the array into json data
Что я хочу достичь
проверить мое подключение к базе данных и ее правильной. Может ли кто-нибудь объяснить мне, что я делаю неправильно? я что-то пропустил? Заранее спасибо.
Необходимо отладить это и предоставить более подробную информацию. Вы смотрите консоль своего браузера (F12)? На вкладке «Сеть» вы видите запросы AJAX на getautocomplete.php? Является ли «термин» отправлен? –
См. Также [Как предотвратить SQL-инъекцию в PHP] (http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php). Ваш запрос уязвим для инъекций, так как '$ term' не имеет ограничений. –
Также убедитесь, что на стороне PHP вы включили и включили отчет об ошибках. 'Error_reporting (E_ALL); ini_set ('display_errors', 1) '; –