У меня есть googled и смотрел на SO какое-то время, и я не могу понять это. Единственное требование, которое я пытаюсь выполнить, - это вернуть правильно отформатированный массив javascript, содержащий результаты оператора sql.PHP В массив Javascript?
I.E.
Учитывая запрос:
SELECT NUMBERS FROM TABLE
результаты:
NUMBERS
1
2
3
Я хотел бы, чтобы в конечном итоге получить обратно массив как так
["1","2","3"]
Пожалуйста, помогите мне понять, где я не соответствует действительности
Вот мой PHP код
<?php
$mysqli = new mysqli("local.host.com", "user", "pass", "db");
$sql = "SELECT DISTINCT NAME FROM table";
$result = $mysqli->query($sql);
while($row = $result->fetch_array())
{
$rows[] = $row['NAME'];
}
echo(json_encode($rows));
$result->close();
/* close connection */
$mysqli->close();
?>
Вот мой JavaScript:
function GetCards()
{
var cardarray = new Array();
//alert('test');
$.getJSON('getcardlist.php', function(data)
{
for(var i=0;i<data.length;i++)
{
cardarray.push(data[i]);
}
//return cardarray;
});
return cardarray;
}
EDIT:
Немного больше информации, Im пытаюсь настроить список автозаполнения для Jquery UI, это моя установка для виджета автозаполнения.
var list = GetCards();
$("#name").autocomplete({
source: list,
minLength: 2
И это ошибка Im получение из хромированной консоли
Uncaught TypeError: Cannot read property 'label' of null
В чем проблема? Какие ошибки вы получаете? –
Ваш код не имеет ссылки на 'label'. – hjpotter92
? автозаполнение использует список var в качестве источника, список устанавливается с помощью GetCards, который вызывает php-страницу. – Pseudonym