[英]Ajax error when retrieving data from JSON
我試圖將數據發送到我的PHP文件中,該文件在DB中插入值(這部分是確定的),然后將JSON編碼的數據發送回JavaScript文件,以便我可以顯示它們,但它不起作用。 我不知道什么是真正的錯。 我一直在看許多可行的例子,而我的卻沒有。
$.ajax({
type: "POST",
dataType: "json",
url: "requete.php",
data: data,
success: function(data) {
if (data.success == true) {
alert(data.message);
}
},
error: function(errorThrown) {
alert('error');
}
});
數據已正確發送到PHP並插入到DB中,但以下json不會顯示:
if (isset($_POST['action']) && $_POST['action'] == 'add_attribution') {
$nom = $_POST['nom'];
$date = $_POST['date'];
$montant = (int)$_POST['montant'];
$type = utf8_decode($_POST['type']);
$sql = "insert into bo_depenses (montant,date,personne,description,carte) values('$montant','$date','','$nom','$type')";
$result = mysql_query($sql);
$data = array('success'=> true,'message'=>'Success message: hooray!');
echo json_encode($data);
使用此代碼,控制台將返回“對象”,並將數據發送到PHP / MySql(??)
謝謝你的幫助
更新 :我設法通過輸入錯誤來獲取json結果:
var obj = JSON.stringify(data)
alert(obj);
原來,它顯示的是我發送到PHP腳本(要插入DB中)的第一個值,而不是我JSON編碼的那個值……為什么?
嘗試使用
if ($.trim(data.success) == 1)
有時回來我遇到了類似的情況,我用這個解決了
放置header("content-type: application/json");
echo
之前。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.