[英]AJAX, POST, JSON, and PHP: How do I do it?
如何使用JSON数据格式通过类型为“ POST”的JavaScript通过$ .ajax()发送AJAX数据,以及如何通过PHP脚本(通过$ _POST ??)接收数据并将其放入数组中,所以我可以使用吗? 我已经踢了好几个小时了,不知道我在做什么错。 如果有人可以发布用于发送和接收JSON格式数据的JS和PHP代码,我将万分感谢!!!!
JS代码:
$.ajax({
type: "POST",
url: $(location).attr('protocol') + "//" + $(location).attr('hostname') + "/ajax/rate.php",
data: {
"value1": 1,
"value2": 2,
"value3": 3,
"value4": 4,
"value5": 5
},
dataType: "json"
});
PHP代码:
我只是使用$ _POST [“ value1”]等获取该值。 关于这一点,有没有一种方法可以使ajax请求改为GET并打开一个上面带有该GET数据的新窗口,以便我可以看到发生了什么?
这个想法是创建一个php页面,以JSON形式输出数据。 此数据从数组中获取,并使用json_encode
函数回显。 使用jQuery中的$.ajax()
方法,您可以向该页面发送请求,并在success:
函数中处理数据。
例。
PHP-array.php
$array = ("flag" => 1);
echo json_encode($array);
的JavaScript
$.ajax({
url : '/array.php', // page containing JSON data
dataType : 'json', // must be specified for JSON manipulation in success
success : function(data) {
// this function is called if the call to test.php is successful
// access the data using object dot syntax
alert(data.flag); // should display '1'
}
});
//通过这种方式将数据发送到服务器PHP-test.php
echo $_POST['data'];
的JavaScript
$.ajax({
url : '/test.php',
dataType : 'text',
type : 'post',
data : { data : 'Hello, World!'},
success : function(data)
alert(data); // should display 'Hello, World'
}
});
据我所知,您不能以JSON格式发布数据。 仅作为查询字符串,例如GET。 但是,您可以从PHP脚本以JSON格式返回数据。
例如。
$.ajax({
url: "script.php",
dataType: 'json', // Tell jQuery/JS that the returned data from script.php is JSON format
data: 'id='+Id, // will become $_POST['id'] with the value of Id (js var)
success: function(data){
// data is JSON formatted
}
现在,在您的PHP脚本中,您将收到一个名为$ _POST ['id']的POST变量。 假设需要$ _POST ['id']从数据库中请求某个客户。 它的数据可以存储在数组中,然后进行json编码,然后使用ajax请求发送回页面。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.