我使用這個jQuery的功能,通過Ajax獲得的數據返回:數據未從阿賈克斯POST
function addContentPrt(cid){
$.ajax({
url: "<?=parseLink('addContent.php')?>",
type: "POST",
cache: true,
dataType:'json',
data: {id: cid},
success: function(returnedData){
console.log(returnedData);
},
error: function (xhr, tst, err) {
console.log(err);
}
});
}
,並在接收端:
<?
header("Content-Type: application/json", true);
if(isset($_POST['id'])) {
$id = $_POST['id'];
}
$sql = mysql_query("SELECT * FROM pharmacies WHERE id=$id");
$r = mysql_fetch_array($sql);
echo $r['title'];
echo $id;
?>
的echo $id
不會返回到AJAX,但不$r['title']
,並在控制檯中執行null
。如果我添加一些虛擬文本,如hello world
,我得到一個合成器錯誤SyntaxError: Unexpected token h {stack: (...), message: "Unexpected token h"}
這可能是什麼原因,我該怎麼做才能修復它?
讀變量
$r
你返回一個字符串,而不是JSON。 –在你的mysql_fetch_array上添加一個標誌MYSQL_ASSOC。否則你不會有數組鍵作爲標題..爲了測試更好的print_r($ r);要檢查你在$ r – Svetoslav
你有什麼,你應該看看json_encode。 – Jai