javascript - 使用 PHP 的 MySQL 查询未返回预期数据

标签 javascript php mysql json

我正在尝试使用 PHP 访问 MySQL 数据库以填充 Javascript 数组,但该数组始终为空。之前,我有一个“www-data@localhost”访问错误,但无法弄清楚并回滚了代码。谁能分享任何见解?

JS:

var arrayPOIs = [];

function getPoints(){
    $.get('getdata.php', function(data){
        arrayPOIs = data;   
    });
}

获取数据.php:

$mysqli = new mysqli("localhost", "user", "pass", "test");

if (mysqli_connect_errno())
{
    echo("Connect failed: ") . mysqli_connect_error();
    exit();
}

$query = "SELECT * FROM points";

$result = mysqli_query($query) or die(mysqli_error());

$potential = mysqli_fetch_array($result);

echo json_encode($potential);

我试图将表的内容输出到一个数组。在我的浏览器控制台中,它总是显示为空。如:

arrayPOIs
""

我想我可能在数据库连接查询过程中遇到了一些问题。虽然,我对此很陌生,但我迷路了。有什么想法吗?

此外,如何以及在哪里可以实时检查 PHP 正在执行的操作,即错误消息?

编辑:

跟进评论:

  • 添加 “json” 作为第三个参数后,arrayPOIs var 变为(在 FF 的控制台中)Array [ ]

  • 我的 getdata.php 页面在直接访问时显示为空(空白)

编辑 2:

在 Niranjan N Raju 的帮助下 (+1),它已部分修复。我的查询调用中的 PHP 语法错误。现在,我的对象格式不正确。我得到:

{"0":"1","id":"1","1":"poi_teste1","name":"poi_teste1","2":"41.1953","latitude":"41.1953","3":"-8.60134","longitude":"-8.60134"}

但我需要类似 (JSON) 的东西:

name: poi_teste1,
latitude: 3464357247,
longitude: 247245672

对于表中的每一行,它是这样的:

id | name    | latitude | longitude
#1 | string  | float    | float
#2 | string  | float    | float
#3 | string  | float    | float
#4 | string  | float    | float

最佳答案

您在 mysqli_query() 中错过了连接对象

这样改

$result = mysqli_query($mysqli,$query) or die(mysqli_error());
                       ^      ^

编辑

如果你得到超过 1 行,比如

array(
    0 => id,name,lat and long,
    1 => id,name,lat and long,
    2 => id,name,lat and long,
);

对于上述结果,输出是正确的。要访问 ajax 中的值,请使用 for() 循环

另外,既然不需要索引,记得改成

$potential = mysqli_fetch_array($result);

$potential = mysqli_fetch_assoc($result);

更多信息在 fetch_assoc .

关于javascript - 使用 PHP 的 MySQL 查询未返回预期数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33219516/

相关文章:

javascript - 如何优化此计算器中的类型描述?

javascript - 检查页面上的元素是否对真实用户隐藏?

PHPExcel 不会导出为 CSV

php - mysql 连接和空

javascript - 如何使用 ngFor Angular2 的表中的输入占位符

javascript - 使用 JQuery 将 onClick 分配给动态按钮

javascript - 发送表单/谷歌地图自动完成

php - Codeigniter 查询总是返回 TRUE

mysql - 获取架构列表,然后使用该列表来选择表

python - 如何添加与 ManyToManyField 相关的另一个字段?