Я получил автозаполнение для работы (в качестве теста) с локальным массивом JS. Теперь я извлекаю удаленный json-кодированный массив из запроса к базе данных, который запускаю в searchAC.php. Возвращенный массив выглядит нормально, автозаполнение отлично работает с локальным массивом, а API пользовательского интерфейса jQuery примерно так же полезен, как запрос почтового ящика, почему мой код не работает (по крайней мере, для этого конкретного случая).
Я не буду помещать свой HTML, так как я знаю, что он работает нормально, но вот код jQuery:
<script type="text/javascript" charset="utf-8">
$(function(){
$('#searchPost').submit(function(event) {
if ($('#searchBox').val() == '') {
event.preventDefault();
}
});
$("#searchBox").autocomplete({
source: php/searchAC.php
});
});
</script>
А вот searchAC.php:
<?php
session_start();
$con = mysql_connect("localhost","coupons","couponscoupons");
mysql_select_db("coupons", $con);
$currentZone = $_SESSION["zoneSelected"];
$results = mysql_query("SELECT DISTINCT retailerName FROM coupons WHERE retailerName LIKE '%" . $_GET['term'] . "%' OR description LIKE '%" . $_GET['term'] . "%' AND dateExp > CURDATE() AND zone='$currentZone' AND approved <> 0");
$printResults = array();
while($row = mysql_fetch_array($results))
{
$row_array['label'] = stripslashes($row[0]);
$row_array['value'] = stripslashes($row[0]);
array_push($printResults,$row_array);
}
echo json_encode($printResults);
?>
Когда я захожу в searchAC.php напрямую, результаты выглядят так:
[{"label":"foo","value":"foo"},{"label":"bar","value":"bar"}]
Однако, ничего из того, что я изменяю, кажется, заставляет код работать. Я всегда гуглил Есть идеи?