$.ajax({
url:"update.php",
data: {orderid:orderid,date:date,tool:tool,name:name,email:email,count:count,orderstatus:orderstatus},
type:"POST",
dataType: "text",
complete:function(response){
console.log(response.responseText);
}
});
上面的代码ajax将数据(名称,日期,电子邮件)发送到不同的文件名更新。
update.php如下
$orderid=$_POST["orderid"];
$date=$_POST["date"];
$tool=$_POST["tool"];
$name=$_POST["name"];
$email=$_POST["email"];
$count=$_POST["count"];
$sql = "UPDATE $tablename SET `Tool`= '$tool', `Request Date` = '$date', `Name` = '$name', `Email` = '$email', ` Country_Entered` = '$count'WHERE `Order ID` = '$orderid'";
但由于某种原因,当我添加Country_Entered
= $ count`时,更新无法正常工作我试图调试问题我无法在代码中找到问题不足
$result = mysqli_query($db,$sql);
if ($result) {
echo "Successfully Updated.";
} else {
echo "Some Error occured.";
echo mysqli_error($sql) ;
}
echo mysqli_error($sql) ;
显示以下错误错误
“字段列表”中的“未知列”“已输入国家/地区”
并且任何人都可以解决这个问题吗?
名称,电子邮件,计数,工具,orderstatus是varchar, 和orderid是int, 请求日期是DATE。
答案 0 :(得分:3)
正如错误所示,@Rakesh Sharma在评论中也提到了
"未知列' [空格]国家/地区输入'在'字段列表'"
我认为问题是' Country_Entered'
中的额外空格,查询中有额外的空格。删除它,我认为它应该工作正常。
答案 1 :(得分:2)
确保varchar列采用非空值,例如空字符串或null。如果你的查询看起来像这个问题就会出现问题
$sql = "UPDATE $tablename SET `Tool`= '$tool', `Request Date` = '$date', `Name` = '$name', `Email` = '$email', `Country_Entered` = '$count'WHERE `Order ID` = '$orderid'";
例如,如果$ count为空,则查询将如下所示
... `Country_Entered` = '' ...
这是sql语法错误。 请注意列名称中的空格 - > `Country_Entered` ='$ count'。删除它只是为了确保它不会导致问题。
答案 2 :(得分:1)
Country_Entered列真的存在于DB内吗?