2017-03-12 122 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:您的意思是_“客户端验证”_? –