PHP到Javascript数组?

PHP到Javascript数组?,php,javascript,arrays,Php,Javascript,Arrays,我已经在谷歌上搜索和查看了一段时间,但似乎无法理解这一点。我试图满足的唯一要求是返回一个包含sql语句结果的格式正确的javascript数组 即 给出一个查询: SELECT NUMBERS FROM TABLE 结果: NUMBERS 1 2 3 我希望最终得到一个这样的数组 ["1","2","3"] 请帮助我理解我的错误所在 这是我的php代码 <?php $mysqli = new mysqli("local.host.com", "user", "pass", "db

我已经在谷歌上搜索和查看了一段时间,但似乎无法理解这一点。我试图满足的唯一要求是返回一个包含sql语句结果的格式正确的javascript数组

给出一个查询:

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();
?>
这就是我从chrome控制台得到的错误

Uncaught TypeError: Cannot read property 'label' of null 

您必须使用
$。每个
获取数据

$.getJSON('getcardlist.php', function(data)
{
    $.each(data, function(key, val) {
       cardarray.push(val);
    });
    //return cardarray;
});

GetCards
返回一个空数组——这是您传递给Autocomplete小部件的内容——并导致小部件抛出
TypeError
异常。要传递填充的数组,请将实例化Autocomplete的代码移动到
getJSON
success回调中(我不确定您是否需要遍历
data
——除非您需要以某种方式实际转换其内容):


可选地,考虑使用AutoRoad的速记来直接从数据feed()中加载。但是,这种方法可能需要在服务器端进行一些额外的工作,以便根据用户类型筛选列表——如果您希望这样做的话。

那么问题出在哪里?您会遇到什么错误?您的代码没有引用
标签
。?“自动完成”使用var列表作为源,列表由调用php页面的GetCards设置。我不确定我还可以在您的js控制台上检查哪些内容。ajax返回的目的是什么?您发布的代码与您的错误无关。发布相关代码。我前一段时间已经通过了,但这是一个很好的答案,并提供了相关信息。
Uncaught TypeError: Cannot read property 'label' of null 
$.getJSON('getcardlist.php', function(data)
{
    $.each(data, function(key, val) {
       cardarray.push(val);
    });
    //return cardarray;
});
$.getJSON( 'getcardlist.php', function( data ) {
    $( "#name" ).autocomplete( {
        source: data,
        minLength: 2
    } );
} );