我现在遇到一个问题,就是发送一个JS对象到PHP,我发现这应该通过HtmlHttpRequest
来完成,但问题是我是PHP的新手,而且,我不太了解这个XmlHttpRequest
是如何工作的。我尝试过不同的方法,但我发现适合我的方法总是返回相同的错误。代码将发布在下面,现在关于问题,我可以执行此请求,但当我执行此操作时,PHP端返回一条错误消息,指出存在未定义的索引。
下面是所需的代码
JS部分:
function createTransaction() {
var xmlhttp = new XMLHttpRequest();
var newTransaction = {"name": document.getElementById('wallets').value}
newTransaction.data = {
"transactionID": document.getElementById('trans-id').value,
"time": document.getElementById('creation-time').value,
"senders": getSenders(),
"receivers": getReceivers(),
"finalSum": setSum()
};
xmlhttp.open('POST', '/admin.php', true);
xmlhttp.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
xmlhttp.onreadystatechange = function () {
if (this.readyState === 4 || this.status === 200) {
console.log(this.responseText); // echo from php
}
};
xmlhttp.send({newTransaction});
console.log(JSON.stringify(newTransaction));
}
一个简短的描述:在这个函数中,我生成了一个对象,然后使用POST
请求通过XmlHttpRequest
发送给PHP,仅此而已,在PHP端有一个变量来捕获这个请求并回显它。代码如下:
$newTransaction = $_POST['newTransaction'];
echo $newTransaction;
哪里出了问题和/或如何更好地解决此问题?
https://stackoverflow.com/questions/52156348
复制相似问题