Php 如何使用选中值和未选中值更新多行?

Php 如何使用选中值和未选中值更新多行?,php,mysql,Php,Mysql,我的桌子结构像 id | user_id | notification_id | is_email_opted | is_sms_opted 1 88 10 0 0 1 88 12 1 0 我有这样的复选框 <td><h6>Work Order</h6></td> &

我的桌子结构像

  id | user_id | notification_id | is_email_opted | is_sms_opted
   1   88          10                 0               0
   1   88          12                 1               0
我有这样的复选框

<td><h6>Work Order</h6></td>
 <input type="checkbox" name="email_job" id="email_job">
         <input type="checkbox" name="work_order_email" id="work_order_email" checked disabled value="1"></label></td>     

               <input type="checkbox" name="work_order_sms" id="work_order_sms" value="1"></label></td>
                                </tr>

到目前为止你试过什么?您应该发布处理此表单所用的PHP代码。如果它正常工作,那么问题出在哪里?@epodax:我曾想过稍微减少代码结构,但我想知道有没有办法做到这一点,同时我明白您为什么要这样做,需要记住的一点是,您需要在可读性和代码最小化之间保持良好的平衡,这意味着如果您使代码更短/更小,可能更难理解,这不是一件好事。@epodax:如何使用选择查询(如foreach$notification_type as$id{echo/>循环复选框
       <input type="hidden"  name="sms_job_notify" id="sms_job_notify" value="0">
              <input type="hidden" name="email_job_notify" id="email_job_notify" value="0">
            <input type="hidden" name="work_order_sms_notify" id="work_order_sms_notify" value="0">
            <input type="hidden" name="deal_email_notify" id="deal_email_notify" value="0">
         if($email_job || $sms_job ){
            $update_data = array("is_email_opted"=>$email_job,"is_sms_opted"=>$sms_job);
            $this->db->where("notify_type_id",10);
            $this->db->where("user_id",$this->session->userdata('user_id'));
            $this->db->update("user_notification", $update_data);
            echo $this->db->last_query();
        }else{
            $update_data = array("is_email_opted"=>0,"is_sms_opted"=>0);
            $this->db->where("notify_type_id",10);
            $this->db->where("user_id",$this->session->userdata('user_id'));
            $this->db->update("user_notification", $update_data);
            echo $this->db->last_query();

        }

        if($work_order_sms ){
            $update_data = array("is_sms_opted"=>$work_order_sms);
            $this->db->where("notify_type_id",11);
            $this->db->where("user_id",$this->session->userdata('user_id'));
            $this->db->update("user_notification", $update_data);
            echo $this->db->last_query();
        }else{
            $update_data = array("is_sms_opted"=>0);
            $this->db->where("notify_type_id",11);
            $this->db->where("user_id",$this->session->userdata('user_id'));
            $this->db->update("user_notification", $update_data);
            echo $this->db->last_query();

        }