Php未从JavaScript接收post
我已经在我的站点的其他地方实现了相同的设置,但我不明白为什么这次它不起作用 当用户单击accept按钮时,它调用JavaScript函数acceptOrder(orderID),该函数将orderID传递到php页面以更新数据库中的记录 orderID在JavaScript中分配为ok,但它没有到达php。POST上的Var_dump没有显示任何内容,$_POST('orderID')也没有显示任何内容。我甚至尝试过只向php发送一个整数,以防var出现问题,但没有任何区别 Js PhpPhp未从JavaScript接收post,javascript,php,Javascript,Php,我已经在我的站点的其他地方实现了相同的设置,但我不明白为什么这次它不起作用 当用户单击accept按钮时,它调用JavaScript函数acceptOrder(orderID),该函数将orderID传递到php页面以更新数据库中的记录 orderID在JavaScript中分配为ok,但它没有到达php。POST上的Var_dump没有显示任何内容,$_POST('orderID')也没有显示任何内容。我甚至尝试过只向php发送一个整数,以防var出现问题,但没有任何区别 Js Php 不
不用说,我已经四处搜索,在其他地方找不到任何解决方案
非常感谢请更换此线路
xmlhttp=new ActiveXObject("Microsoft. }
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
按照这条路线走
xmlhttp=new ActiveXObject("Microsoft. }
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
请换这条线
xmlhttp=new ActiveXObject("Microsoft. }
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
按照这条路线走
xmlhttp=new ActiveXObject("Microsoft. }
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
你应该在你的js中写这个
function acceptOrder(orderID) {
var orderID=orderID;
console.log("assigned: "+orderID);
var xmlhttp;
// code for IE7+, Firefox, Chrome, Opera, Safari
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
// code for IE6, IE5
else
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
console.log (xmlhttp.responseText);
}
}
xmlhttp.open("POST","acceptorder.php",true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-rule encoded");
xmlhttp.send(orderID);
console.log(orderID+" sent");
//location.reload();
//console.log("reload");
}
你应该在你的js中写这个
function acceptOrder(orderID) {
var orderID=orderID;
console.log("assigned: "+orderID);
var xmlhttp;
// code for IE7+, Firefox, Chrome, Opera, Safari
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
// code for IE6, IE5
else
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
console.log (xmlhttp.responseText);
}
}
xmlhttp.open("POST","acceptorder.php",true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-rule encoded");
xmlhttp.send(orderID);
console.log(orderID+" sent");
//location.reload();
//console.log("reload");
}
我建议您在ajax调用中使用jQuery。它更容易设置,也更直观。特别是,特别是因为它对于初学者来说非常容易设置。对于那些希望以简单的方式安装ajax的人来说。每当我想在代码中使用ajax时,我都会使用它。以下是一个链接:
http://api.jquery.com/jquery.ajax/
只需将标记包含jQuery,然后使用一个javascript命令调用ajax。我建议您使用jQuery进行ajax调用。它更容易设置,也更直观。特别是,特别是因为它对于初学者来说非常容易设置。对于那些希望以简单的方式安装ajax的人来说。每当我想在代码中使用ajax时,我都会使用它。以下是一个链接:
http://api.jquery.com/jquery.ajax/
只需将标记放入jQuery,然后使用一个javascript命令调用ajax。正如我所见,您没有为orderID设置变量名,请更改代码行:
xmlhttp.send(orderID);
致:
若这只是缺少orderID的SQL错误,并且所有其他过程都是正确的,那个么这就是您的解决方案。正如您在评论中所说,“我只是得到一个sql错误,因为变量orderID是空的”。
您只缺少命名后发送数据,这就是为什么它是空的。正如我所看到的,您没有为orderID设置变量名,更改代码行:
xmlhttp.send(orderID);
致:
若这只是缺少orderID的SQL错误,并且所有其他过程都是正确的,那个么这就是您的解决方案。正如您在评论中所说,“我只是得到一个sql错误,因为变量orderID是空的”。
您只丢失了命名后发送数据,这就是它为空的原因。您有任何错误吗?我已从手机上发布了此消息,并删除了Microsoft周围的部分js,因此请忽略该位。@Happy编码无错误Application/x-www-form-rule encoded有问题。请尝试“application/x-www-form-urlencoded”请将这一行xmlhttp=new-ActiveXObject(“Microsoft.}”替换为下面这一行xmlhttp=new-ActiveXObject(“Microsoft.xmlhttp”);您有任何错误吗?我已从手机上发布了此消息,并删除了Microsoft周围的部分js,因此请忽略该部分。@Happy编码无错误application/x-www-form-rule encoded有问题。请尝试“application/x-www-form-urlencoded”请将这一行xmlhttp=new ActiveXObject(“Microsoft.}替换为以下这一行xmlhttp=new ActiveXObject(“Microsoft.XMLHTTP”);是的,我知道,这些是通过手机复制/粘贴时的拼写错误。它们在原始代码中都是正确的。是的,我知道,这些是通过手机复制/粘贴时的拼写错误。它们在原始代码中都是正确的。是的,我知道,这些是通过手机复制/粘贴时的拼写错误。它们在原始代码中都是正确的。你在干什么console@Shibon我只是sql错误,因为变量orderID为empty@Paul为什么订单id是空的?你能给我们一些更多的信息吗?参考这个是的,我知道,这些是通过手机复制/粘贴时的打字错误。它们在原始代码中都是正确的。你得到了什么console@Shibon我刚刚得到一个sql错误,因为变量orderID是empty@Paul为什么订单id是空的?你能给我们更多的信息吗?参考这个我想你是对的。这可能是我出错的地方。我回家后会试试这个。非常感谢。我想你是对的。这可能是我出错的地方。我回家后会试试这个。非常感谢