Php 我希望这样,当在我的表中选中复选框时,使其更新特定用户的值

Php 我希望这样,当在我的表中选中复选框时,使其更新特定用户的值,php,html,ajax,html-table,Php,Html,Ajax,Html Table,我试图这样做,当我单击表中客户端行中的复选框时,我希望我的ajax向我的php代码发送一个ID和复选框值(如果选中,则为1或0 | 1,如果未选中,则为0),并使用0或1更新特定用户名为“enabled”的列。在我的代码中,每次单击复选框的标签进行更新时,它只更新一个客户端。最重要的是: 为了向您显示每个用户的复选框,我现在使用textbox来显示用户id是不同的,但它只更新了顶部的列-客户机id号46 这是我的密码 HTML/PHP表格 <td style="border: 1px s

我试图这样做,当我单击表中客户端行中的复选框时,我希望我的ajax向我的php代码发送一个ID和复选框值(如果选中,则为1或0 | 1,如果未选中,则为0),并使用0或1更新特定用户名为“enabled”的列。在我的代码中,每次单击复选框的标签进行更新时,它只更新一个客户端。最重要的是:

为了向您显示每个用户的复选框,我现在使用textbox来显示用户id是不同的,但它只更新了顶部的列-客户机id号46

这是我的密码

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);">
<input type="textbox" name="id_value" id="id_value" value="<?php echo $faq[$k]["id"]; ?>">
<div class="checkbox checkbox-inverse checkbox-circle">
    <?php echo $faq[$k]["enabled"]  == 1 ?
    '<input id="checkbox-15" value="1" name="checkbox" type="checkbox" checked ><label for="checkbox-15">ON</label>'
    :
    '<input id="checkbox-15" type="checkbox" name="checkbox"><label for="checkbox-15">OFF</label>'; ?>

</div>
        <script type="text/javascript">
        $(document).ready(function() {    
            $('#custom7').click(function() {
                if($(this).is(":checked")) {
                    $(this).siblings('label').html('on');
                } else {
                    $(this).siblings('label').html('off');
                }
            });
        });
        </script>

     <script>
        $(document).ready(function() {
            $('input[name=checkbox]').click(function() {

                var id = $('#id_value').val();

                if ($(this).is(':checked'))
                  var checkbox = '1';
                else
                  var checkbox = '0';

                $.ajax({
                    type:'POST',
                    url:'includes/saveedit_members.php',
                    data: {
                        id: id,
                        checkbox: checkbox
                    }
                }).done(function(response) {
                    window.location.replace("admin_members.php");
                });

            });
        });
    </script>

    <script type='text/javascript'>

        function isNumberKey(evt) {
            myOutput = document.getElementById('add_user_result');
            var charCode = (evt.which) ? evt.which : evt.keyCode;
            if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57)) {
                myOutput.innerHTML = "<font style='color: red;'>You must fill in all the blanks.</font>";
                return false;
            } else {
                return true;
            }
        }

        $(document).ready(function() {
            $("#add_user_result").hide();
        });

        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");
                }
           });
        }
if(isset($_POST['checkbox'])) {
    mysqli_query($con, "UPDATE users set enabled = '".$_POST['checkbox']."' WHERE  id=".$_POST["id"]);
}

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"]);
}

如果有人能帮我,请记住,我希望它能够获取特定用户的id,这样我的php代码就可以更新选中的复选框;不是所有或一个客户机。

我假设每个客户机都有一个ID。如果是这样,请获取并传递ID,并用相应的ID编辑行。此外,您不应该使用
mysql\u
,因为它已经被弃用一段时间了。您应该使用
mysqli\uuquo;
或PDO。@Edward我正在使用mysqli。哈哈。而且,我认为我的问题是因为标签。看看我的代码。标签与复选框对应。它只允许我更新一个复选框,因为第一部分中的标签与其他所有列中的标签相同-。他们都是15岁。我如何才能使它更改每个用户的(for)复选框/标签命令?抱歉,忽略了
mysqli\uucode>lol中的“I”。您可以执行
checkbox-并且
$userId`应该是客户端ID。
^即使从隐藏输入中获取值,这仍然不起作用。它只允许我更新第一个客户端的第46行。没有其他人。有什么想法吗?我假设每个客户端都有一个ID。如果有,请获取并传递ID,并用相应的ID编辑行。此外,您不应该使用
mysql\uuu
,因为它已经被弃用一段时间了。您应该使用
mysqli\uuquo;
或PDO。@Edward我正在使用mysqli。哈哈。而且,我认为我的问题是因为标签。看看我的代码。标签与复选框对应。它只允许我更新一个复选框,因为第一部分中的标签与其他所有列中的标签相同-。他们都是15岁。我如何才能使它更改每个用户的(for)复选框/标签命令?抱歉,忽略了
mysqli\uucode>lol中的“I”。您可以执行
checkbox-并且
$userId`应该是客户端ID。
^即使从隐藏输入中获取值,这仍然不起作用。它只允许我更新第一个客户端的第46行。没有其他人。有什么想法吗?