Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在自动完成中仅显示预定义的数组索引值?_Javascript_Php_Jquery - Fatal编程技术网

Javascript 如何在自动完成中仅显示预定义的数组索引值?

Javascript 如何在自动完成中仅显示预定义的数组索引值?,javascript,php,jquery,Javascript,Php,Jquery,“我的自动完成”的工作原理是按照列表中的建议从数据库中获取数据。但我对它做了一点修改。我希望以数组形式显示,而不是显示字符串值 关于我使用的javascript,请参阅本手册: 下面是我的php: $my_data='$_GET["data"]';// this is the data user keys in $sql="SELECT place,lat FROM loc_coordinate WHERE place LIKE '%$my_data%' ORDER BY place"; $r

“我的自动完成”的工作原理是按照列表中的建议从数据库中获取数据。但我对它做了一点修改。我希望以数组形式显示,而不是显示字符串值

关于我使用的javascript,请参阅本手册:

下面是我的php:

$my_data='$_GET["data"]';// this is the data user keys in
$sql="SELECT place,lat FROM loc_coordinate WHERE place LIKE '%$my_data%' ORDER BY place";
$result = mysqli_query($mysqli,$sql) or die(mysqli_error());
$test=array();
if ($result) {
    while ($row=mysqli_fetch_array($result)) {
        echo $row['place']." \n";//this is the name of the place shown in the autocomplete list
    }
}
这显示如下:

但我想更改它,如下所示(以数组形式)


现在,当用户从自动完成列表中选择任何项目时,我只希望选择
$row['lat']

但它选择这两个字符串作为单个字符串,如下所示:

如何使其仅显示2.993518//可能可以像
$arrayName[1]


我认为需要在javascript文件中进行更改。

FYI,此脚本非常不安全,完全易受SQL影响injection@Pitchinnate我知道…现在我只想先把函数做好“我认为需要在javascript文件中进行更改”。请提供相关的javascript代码。@它在JSFIDLE中
echo $row['place'].">".$row['lat']." \n ".//show two items in the array