发送到php时未设置Ajax$\u POST
我正在尝试使用ajax post将一些数据从javascript发送到php。Ajax确实成功运行,console.log(progData)和console.log(idData)显示了正确的值。数据只是没有被推送到php 我尝试了不同的数据类型,看看这是否可以修复它,但是将它放在json上就破坏了它,即使我在php文件中指定了json。我也尝试过两种方法:“POST”和类型:“POST” 下面是Ajax的POST代码发送到php时未设置Ajax$\u POST,php,jquery,ajax,post,Php,Jquery,Ajax,Post,我正在尝试使用ajax post将一些数据从javascript发送到php。Ajax确实成功运行,console.log(progData)和console.log(idData)显示了正确的值。数据只是没有被推送到php 我尝试了不同的数据类型,看看这是否可以修复它,但是将它放在json上就破坏了它,即使我在php文件中指定了json。我也尝试过两种方法:“POST”和类型:“POST” 下面是Ajax的POST代码 $.ajax({ method: 'POST',
$.ajax({
method: 'POST',
url: './updater.php',
data: {
prog: progData,
id: idData
},
success: function(data){
console.log(data);
console.log("--------");
console.log(progData);
console.log(idData);
}
});
下面是updater.php文件代码
include "./database.php";
if(isset($_POST["prog"])) {
$prog = $_POST["prog"];
$id = $_POST["id"];
$sql = "UPDATE tasks SET task_progress='". $prog ."' WHERE task_id='". $id ."'";
if ($link->query($sql) === TRUE) {
echo "Record updated successfully ";
echo $prog . " ";
echo $id;
} else {
echo "Error updating record";
}
} else {
echo "Prog is not set";
}
当代码运行时,两个值prog和id被发送到php文件并上传到数据库。但是,php文件没有检测到任何$\u POST,并且在console.log(数据)上,它显示未设置$\u POST[“prog”]。根据“网络”选项卡,数据被正确地发送到php。方法应该是类型您也可以接受SQL注入,并且应该立即解决php脚本中的语法错误(例如,
echo$prog+”;
<这是JS连接)。。。我不认为$prog=$\u POST[“prog”]或$\u REQUEST[“prog”]
会做你认为会做的事(同样,PHP不是JS)。只需打开开发者控制台(F12)并移动到网络选项卡。然后单击按钮发布并检查数据是否已传递。或者只是发布一个请求的屏幕截图。根据这个截图,表单数据确实会被发送。