我正在处理一个日历,管理员可以在该日历中更改日期单元格的背景颜色。更改将保存到服务器。现在,它不起作用了。下面是JavaScript的一部分:
for(i=0; i<myDays.length; i++) { // Goes through each TD and creates a click event
myDays[i].addEventListener("click", function(){
if(this.classList.contains("avail")) {
this.classList.toggle("avail");
this.classList.toggle("halfy");
$.post("classChange.php", { dID: this.id, dClass: "halfy" } );
}这是classChange.php中的PHP代码:
if(isset($_POST["dID"]) ){
$stmt = $db->prepare("UPDATE original SET class=? WHERE id=?");
$stmt->bind_param("ss", $dClass, $dID);
$dID = $_POST["dID"];
$dClass = $_POST["dClass"];
$stmt->execute();
$stmt->close();
} else {
echo "Code error, dummy!";
}单击单元格可以正确地更改单元格的类别(和颜色),但不会更新数据库。我没有收到任何错误。我想一定是post()代码或者PHP代码有问题。有什么建议吗?
发布于 2017-02-26 05:37:39
您需要先定义变量,然后才能使用它们。
$dID = $_POST["dID"];
$dClass = $_POST["dClass"];
$stmt = $db->prepare("UPDATE original SET class=? WHERE id=?");
$stmt->bind_param("ss", $dClass, $dID);https://stackoverflow.com/questions/42461821
复制相似问题