如何创建正确的 PHP json 响应
how to create correct PHP json response
你好,我有一个页面可以用 jquery 在 json 中调用一个 ajax 页面。
我刚刚设置
dataType: "json"
在 ajax 调用,我在 php
中设置 header
header("Content-type: application/json; charset=utf-8");
但是当我尝试在客户端中阅读我的回复时出现此错误:
SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data
var o = JSON.parse(jsonString);
更多信息
PHP 文件函数:
function _addToWishlist($v,$db){
$ris = array();
$data = array();
$data[0]=20;
$data[1]=25;
$data[2]=30;
$ris['stato']="1";
$ris['mex']="DA IMPLEMENTARE!!!";
$ris['data']=$data;
$ris['action']="";
ob_clean();
echo json_encode($ris);
}
这是一个 php 响应:
{"status":"success","stato":"1","mex":"DA IMPLEMENTARE!!!","data":[20,25,30],"action":""}
在客户端我使用这个 javascript:
$.ajax({
url: "common/function/include/dataLoad.php",
type: "POST",
data: datas,
async:false,
//dataType: "text",
dataType: "json",
success: function(ris) {
// Run the code here that needs
// to access the data returned
//$(this).parent
//alert (ris);
risp=ris;
//var a = JSON.parse(ris);
tryParseJSON(ris);
//return ris;
},
error: function() {
alert('Errore di rete');
}
}).done(function(){
if(divwhere!=""){
$(divwhere).html(risp);
}
if(actionAfter!=""){
eval(actionAfter);
}
});
用于测试 json 的函数在这里:Whosebug
我怎样才能创建正确的调用 json?非常感谢
jQuery 将自动为您解析 JSON 响应 - 您无需再次执行。返回的 ris
对象已准备好供您按原样使用。假设请求有效,那么您的 PHP 响应格式没有问题。
success: function(ris) {
console.log(ris.status); // = 'success'
console.log(ris.mex); // = 'DA IMPLEMENTARE!!!'
},
你好,我有一个页面可以用 jquery 在 json 中调用一个 ajax 页面。 我刚刚设置
dataType: "json"
在 ajax 调用,我在 php
中设置 headerheader("Content-type: application/json; charset=utf-8");
但是当我尝试在客户端中阅读我的回复时出现此错误:
SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data
var o = JSON.parse(jsonString);
更多信息 PHP 文件函数:
function _addToWishlist($v,$db){
$ris = array();
$data = array();
$data[0]=20;
$data[1]=25;
$data[2]=30;
$ris['stato']="1";
$ris['mex']="DA IMPLEMENTARE!!!";
$ris['data']=$data;
$ris['action']="";
ob_clean();
echo json_encode($ris);
}
这是一个 php 响应:
{"status":"success","stato":"1","mex":"DA IMPLEMENTARE!!!","data":[20,25,30],"action":""}
在客户端我使用这个 javascript:
$.ajax({
url: "common/function/include/dataLoad.php",
type: "POST",
data: datas,
async:false,
//dataType: "text",
dataType: "json",
success: function(ris) {
// Run the code here that needs
// to access the data returned
//$(this).parent
//alert (ris);
risp=ris;
//var a = JSON.parse(ris);
tryParseJSON(ris);
//return ris;
},
error: function() {
alert('Errore di rete');
}
}).done(function(){
if(divwhere!=""){
$(divwhere).html(risp);
}
if(actionAfter!=""){
eval(actionAfter);
}
});
用于测试 json 的函数在这里:Whosebug
我怎样才能创建正确的调用 json?非常感谢
jQuery 将自动为您解析 JSON 响应 - 您无需再次执行。返回的 ris
对象已准备好供您按原样使用。假设请求有效,那么您的 PHP 响应格式没有问题。
success: function(ris) {
console.log(ris.status); // = 'success'
console.log(ris.mex); // = 'DA IMPLEMENTARE!!!'
},