在我的表{AJAX}中选中复选框后如何使数据库更新值

时间:2016-12-06 19:32:55

标签: php ajax checkbox

我想制作我的代码,以便当我点击复选框启用它时,它会将我的数据库中的一行更新为值1.我的复选框位于我的PHP表格中,并围绕AJAX编码。我的问题是,当我单击复选框时,1)它没有做任何事情,(甚至没有使用我的ajax成功状态刷新页面):`

success: function(data) {
   window.location.replace("admin_members.php");
}

2)当从PHP接收器检查时,它不会更新我的数据库信息,因为我的列名为'enabled',值为1。

我的代码位于以下位置:

Html / PHP表格(此处包含复选框)

<td style="border: 1px solid #eee; text-align: center; font-size: 11px;" contenteditable="true" onBlur="saveToDatabase(this,'enabled','<?php echo $faq[$k]["id"]; ?>')" onClick="showEdit(this);"><?php echo $faq[$k]["enabled"]  == 1 ? '<input id="enabled-checkbox" value="1" type="checkbox" checked >' : '<input id="enabled-checkbox" value="1" type="checkbox" >'; ?></td>

AJAX发件人

        function showEdit(editableObj) {
            $(editableObj).css("background","#FFF");
        } 

        function saveToDatabase(editableObj,column,id) {
            $(editableObj).css("background","#FFF url('images/spin.gif') no-repeat right");
            $.ajax({
                url: "includes/saveedit_members.php",
                type: "POST",
                data:'column='+column+'&editval='+editableObj.innerHTML+'&id='+id,
                success: function(data){
                    window.location.replace("admin_members.php");
                }        
           });
        }

PHP接收器

if(!isset($_POST['column']) || !isset($_POST["editval"]) || !isset($_POST["id"])) {
    header('Location: error-pages/index.php');
} else if(isset($_POST['column']) && isset($_POST["editval"]) && isset($_POST["id"])) {
    mysqli_query($con, "UPDATE users set " . $_POST["column"] . " = '".$_POST["editval"]."' WHERE  id=".$_POST["id"]);
}

一些图片示例,以帮助了解我的数据库以及我为什么要这样做:

I want it so if the checkbox is checked, automatically refresh page after updating database column 'enabled' to 1

1 个答案:

答案 0 :(得分:0)

我现在已经完成了:)经过努力工作。