我已經創建了一個簡單的html文件與固定的json對象。我想將對象帶到php文件text.php中,對其進行編碼,解碼,將其打印到php文件中,然後將其打印回html文件中。 HTML文件:ajax和json對象編碼和解碼成php腳本
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</head>
<body>
<script>
var key=45;
var value=65;
var rated = {"key" : key , "value" : value};
var rated_encoded = JSON.stringify(rated);
$.ajax({
type: "POST",
url: "text.php",
dataType:"json",
data: {
"rated" : rated_encoded
},
//success: function(data) {
//document.write(data);
//}
});
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$("#div1").load("text.php");
});
});
</script>
<div id="div1"><h6>Result</h6></div>
<button>Get External Content</button>
</body>
</html>
text.php代碼:
<?php
if(isset($_POST["rated"])){
$rated_json = $_POST["rated"];
$JSONArray = json_decode($rated_json, true);
if($JSONArray !== null){
$key = $JSONArray["key"];
$value = $JSONArray["value"];
}
echo json_encode($rated_json);
}
?>
的
echo json_encode($rated_json);
在text.php的最後一行
是行不通的。我不知道我們是否無法打印編碼的東西或其他東西。代替這一行,即使我輸入echo「hello」,它不會打印在php文件中。如果有什麼方法可以在text.php中打印$ JSONArray變量,那就太好了。如果我可以在html文件本身中編碼json對象,發送到php腳本,在那裏解碼,然後發回並打印在html文件中,會更好。對不起,如果這個問題措辭不當或是非常基本的。另外,請慢一點並解釋代碼。
我還沒有試過。但是,即使我使用echo「hello」,也不會打印任何內容。 – RaviTej310
對不起,你試試這個? $ json = json_encode($ rated_json); echo $ json; – Netzach
我不知道jQuery在這方面的內部工作原理,但是當你用[XMLHttpRequest.send()]發送一個JSON字符串(https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest#send()),數據不在'$ _POST'中。當你調用'var_dump($ _ POST);'和'var_dump(file_get_contents('php:// input'));'? –