Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.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
PHP:出现json解析错误_Php_Jquery_Ajax_Json_Parsing - Fatal编程技术网

PHP:出现json解析错误

PHP:出现json解析错误,php,jquery,ajax,json,parsing,Php,Jquery,Ajax,Json,Parsing,我想通过jQuery使用ajax将数据从数据库导入javascript代码,但是我遇到了一个json解析错误,我真的不知道它是从哪里来的。你能帮我吗 目标是在地图上建造建筑物,我从数据库中获取几何元素,如坐标和形状参数 在JS文件中,放入: })) 在PHP文件中: 一定是 dataType : "json", 如果您希望在响应中使用JSON 编辑:请参见 数据类型 类型:字符串 期望从服务器获得的数据类型。默认值:智能猜测(xml、json、脚本、文本、html) 您正

我想通过jQuery使用ajax将数据从数据库导入javascript代码,但是我遇到了一个json解析错误,我真的不知道它是从哪里来的。你能帮我吗

目标是在地图上建造建筑物,我从数据库中获取几何元素,如坐标和形状参数

在JS文件中,放入:

}))

在PHP文件中:

一定是

dataType : "json",
如果您希望在响应中使用JSON

编辑:请参见

数据类型

类型:字符串

期望从服务器获得的数据类型。默认值:智能猜测(xml、json、脚本、文本、html)


您正在尝试对数据库语句进行json_编码,以处理返回的查询。这不是你可以编码的东西。代码应该是

echo json_encode($donnees);
                 ^^^^^^^^--- the actual data

如果您已经完成了最基本的调试,例如JS中的
console.log(returnData)
,您会发现您没有从脚本中得到任何有效的返回信息。

$response只是一个光标,您需要返回获取的数据

try {
   $bdd = new PDO('mysql:host=localhost;dbname=building_geometry','admin','password');
}

$reponse = $bdd->query('SELECT * FROM ID_GEOMETRYELEMENT');
$donnees = $reponse->fetch(); 

header('Content-Type: application/json'); 
echo json_encode($donnees); 

?>

您从ajax中得到了什么?首先,您必须在JS代码中修复一件事。如果您正在为(var ID_geometryElement in data){编写
,那么您将在
ID_geometryElement
变量中获得每个项,而不是在
$data
中(从何处获得$sign in JS var?),这是什么意思?我希望ajax执行函数addComp()并用它从数据库查询的数据填充数据,但我之前在json解析中遇到了一个错误。除了对
json_encode()的单个调用的输出之外,您的php程序是否还输出其他内容
?浏览器在http响应数据中显示了什么?同样,在您的JS代码中,您似乎有一个名为
data
的变量,但它看起来像是用名称
$data
引用它。这看起来像是一个bug。您可以尝试一下,但没有发现任何问题……这没有任何作用。数据类型json告诉jquery您希望从t返回json服务器,使它自动解码字符串。但是OP正在做。parseJSON,所以键入:html是“ok”。哦,是的,我已经改变了,但json解析中仍然有错误,因为这是我第一次用javascript编码,我不知道有这个调试工具。我会尝试一下,谢谢!谢谢,现在使用Firebug,我知道了正确解析json。
dataType : "json",
echo json_encode($donnees);
                 ^^^^^^^^--- the actual data
try {
   $bdd = new PDO('mysql:host=localhost;dbname=building_geometry','admin','password');
}

$reponse = $bdd->query('SELECT * FROM ID_GEOMETRYELEMENT');
$donnees = $reponse->fetch(); 

header('Content-Type: application/json'); 
echo json_encode($donnees);