我看了看,但没有什么能触及这个问题。
我正在尝试通过JavaScript在Chrome中发送XMLHttpRequest
。这是我的页面:
<!DOCTYPE html>
<html>
<head>
<title>ROAM</title>
<script>
function post_something() {
var xmlhttp = new XMLHttpRequest();
xmlhttp.open('POST', "post_test.php", true);
xmlhttp.setRequestHeader('Content-Type', 'text/plain');
xmlhttp.send("This is my text.");
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
console.log(xmlhttp.responseText);
}
}
}
</script>
</head>
<body>
<table>
<tr><td><input type="button" value="POST a thingy"
onclick="javascript:post_something()">
</input>
</td></tr>
</table>
</body>
</html>
这是我的PHP:
<?php
print_r($_POST);
/>
这会显示在控制台中:
Array
(
)
如果某个地方会告诉我什么是XMLHttpRequest.send实际上做了什么,它究竟发送了什么,PHP如何解析它,以及PHP期望什么,我可以自己解决这个愚蠢的事情。
*请理解我不想使用表单或jQuery。我想直接使用XMLHttpRequest对象,直到我完全理解它是如何工作的以及PHP如何接收和解析它。
答案 0 :(得分:4)
您应该将calc()
声明为Content-Type
,并以application/x-www-form-urlencoded
的形式创建数据字符串。
key1=value1&key2=value2&key3=value3
输出:
阵列
(
[text] =&gt;这是我的文字 [text2] =&gt;这是我的第二篇文章 )
答案 1 :(得分:1)
$ _ POST包含通过请求正文中的application / x-www-form-urlencoded发送的参数。既然你没有关键=值对,那么_POST就没有了 试试
#header{
text-align: center;
color: aqua;
}
#headerBox{
border: 1px black solid;
margin: 0px;
padding-top: 0px;
padding-bottom: 0px;
background-image: url('matrixCode.jpeg');
}
#gLibrary{
color: #989898;
margin: 15px;
display: inline;
}
#gLibrary p a{
text-decoration: none;
color: aqua;
display: inline;
}
#FG{
border: 3px gold solid;
}
#FGD{
color: red;
text-align: center;
}
#MG{
border: 1px purple solid;
background-color: #333;
}
#ft{
text-align: center;
font-size: 16px;
background-color: #333;
color: red;
}
#gameTitle{
color: aqua;
}
#float{
float: left;
}
#desc{
color: crimson;
}
#gameFrame{
margin-top: 1%;
margin-bottom: 1%;
padding-top: 1%;
padding-bottom: 1%;
}
或
xmlhttp.send("x=This+is+my+text.");