2017-03-12 170 views
1

我想從php中檢索json數據並使用ajax輸出並進行測試。但它不起作用。如何從php中檢索json數據

客戶的index.php

<html> 
<head> 
<title>kakak</title> 
</head> 
<body> 
<p id="demo"></p> 

<script> 

var xmlhttp = new XMLHttpRequest(); 
xmlhttp.onreadystatechange = function() { 
    if (this.readyState == 4 && this.status == 200) { 
     myObj = JSON.parse(this.responseText); 
     document.getElementById("demo").innerHTML = myObj.name; 
    } 
}; 
xmlhttp.open("GET", "json.php", true); 
xmlhttp.send(); 

</script> 
</body> 
</html> 

這是json.php已經有對象。

<?php 

$myArray = ["name" => "john", "age" => 30, "city" => "Japan"]; 

$myObj = json_encode($myArray); 

?> 

我想檢索對象名稱,但它不輸出任何東西。

+0

@TheCodesee你是什麼意思呢?對象我想要在json.php中檢索。 –

+0

@TheCodesee'{「name」:「john」,「age」:30,「city」:「Japan」}'這是對象。 –

+0

所以這是你應該在js中收到的。 – Hossam

回答

3

您需要在PHP代碼中回顯JSON字符串。

echo $myObj; 

最終代碼將是:

<?php 

$myArray = ["name" => "john", "age" => 30, "city" => "Japan"]; 
$myObj = json_encode($myArray); 
echo $myObj; 
// or directly 
// echo json_encode($myArray); 
?> 
+0

。由你們各自的。在客戶端使用json數據是否安全?我打算將mysql數據庫轉換爲json,並在客戶端播放,以便在登錄和激活時驗證數據。它安全嗎? –

+0

@jarwobangun:您的意思是_「客戶端驗證」_? –