嗨,我想通過Ajax發送JSON到PHP使用Javascript。當我在firebug上查看數據時,index.html會正確發送數據。它顯示Json類型與正確的數據。 但是,似乎我無法閱讀php上的JSON。我無法使用$ _POST訪問它。 我試過使用$ _POST ['名稱']並沒有響應。 當我嘗試使用$ _POST時,響應是數組。 你能幫我嗎?傳遞JSON使用Ajax發佈通過JavaScript到PHP不工作
這是我的javascript代碼。
<html>
<head>
<script type="text/javascript">
//Create Http request depending on browser
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState==4 && xmlhttp.status==200){
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;}
}
// Function to create
var url = "control.php";
xmlhttp.open("POST",url,true);
xmlhttp.setRequestHeader("Content-Type", "application/json; charset=utf-8");
var data=JSON.stringify({"name":"John", "time":"2pm"});
xmlhttp.send(data);
}
</script>
</head>
<body>
<h2>AJAX</h2>
<button type="button" onclick="loadXMLDoc()">Request data</button>
<div id="myDiv"></div>
</body>
</html>
這是我的PHP代碼
<?php
include_once('JSON.php');
$json = new Services_JSON();
$value = $json->decode($_POST['name']);
echo $value;
?>
一直在這幾天,我真的很感激任何幫助,您可以提供。 謝謝!
爲什麼不使用javascript庫? –
使用jQuery.ajax();如果您使用Firefox的Firebug插件(Tab Console或Network)請求調查時遇到問題 – peipst9lker
執行print_r($ _ POST),您將看到$ _POST全局變量是什麼。也許它會幫助你解決問題 –