POST请求提醒它成功,但未发送数据

时间:2015-05-18 17:43:23

标签: javascript php ajax xmlhttprequest

我有一个JavaScript代码,应该将一些数据发送到服务器上的php文件。 JavaScript代码提供帖子成功的警报,但php文件中没有数据。控制台中不会显示任何错误。这有什么问题?

以下是代码:

var data = "It works";
var url = "data.php";
var http = new XMLHttpRequest();
http.open("POST", url, true);
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http.onreadystatechange = function() {
if(http.readyState == 4 && http.status == 200) {
alert("It worked");
}
}
http.send(data);

以下是代码的网站: http://mikeyrichards.freeiz.com/run.html

编辑:澄清一下,我只希望数据显示在PHP上的文本文件中。由于某种原因,我的服务器无法打开文本文件,所以我必须使用PHP

2 个答案:

答案 0 :(得分:3)

您需要以类似

的键值格式发送数据
var data = "lorem=ipsum&name=test";

答案 1 :(得分:1)

尝试更改为:

var data = 'data=It+works';

然后您可以在PHP脚本中以$_POST['data']

访问它

请勿忘记将空格编码为+%20。如果您要动态生成数据,请使用encodeURIComponent对其进行正确编码:

var data = 'data=' + encodeURIComponent(value);