在 codeigniter 中单击按钮更改用户级别

change userlevel on button click in codeigniter

我正尝试在单击按钮时更新 userlevel。我有一个页面,它将显示那里的所有用户我有更改级别 button.by 默认每个用户都将处于正常级别(意味着 3)所以当我单击一个按钮时它必须更改为 5(lead ) 如果我再次单击它必须更改为 9(admin)

这是我的查看页面代码:

  <div class="col-md-4">
                                    <form method="post" class="change_userlevel" action="" onclick="getConfirmation(9);">
                                        <input type="hidden" name="id" value="<?php echo $user->id; ?>">
                                        <button type="submit"   class="widget-icon" name="login"><span class='icon-arrow-up'></span></button>
                                    </form>
                                      </div>
<td>
                                    <?php
                                    if($usertype==9)
                                    {
                                      echo 'Admin';
                                    }
                                    elseif($usertype==5)
                                    {
                                        echo 'Teamlead';
                                    }
                                    else
                                     {
                                       echo 'Normal';  
                                     }
                                    ?>
                                 </td>

这是我的脚本代码 ajax:

    <script type='text/javascript'>
function getConfirmation(id){
$.ajax({
        url: "User/change_status",
        type: "post",
        data: id,
        success: function (response) {
         location.reload();              

        }
    });
}
</script>

这是我的控制器代码方法change_status:

   function  change_status(){
$id = $this->input->post('id');
$status = $this->db->query("select userlevel from users where id=9")->row()->userlevel;
if($status==3){
    $status = 5;
} else {
    $status = 9;
}
$data=array('userlevel'=>$status);
$this->db->where('id','id');
$this->db->update('users',$data);
}

我不知道我在哪里做错了它不起作用。

谁能帮我解决这个问题。

提前致谢。

希望对您有所帮助:

您的 ajax 代码应该是这样的:

<script type='text/javascript'>
  function getConfirmation(id)
  {
    if (id != '')
    {
        $.ajax({
          url: "<?=site_url('User/change_status');?>",
          type: "post",
          data: {'id' : id},
          success: function (response) {
            alert('success');
           //location.reload();              
          }
      });
    }

}
</script>

你的方法change_status应该是这样的:

function  change_status()
{
    $id = $this->input->post('id');

    $status = $this->db->select('userlevel')->where('id', $id)->get('users')->row()->userlevel;
    if($status == 3)
    {
        $status = 5;
    } else 
    {
        $status = 9;
    }
    $data = array('userlevel' => $status);
    $this->db->where('id', $id);
    $this->db->update('users',$data);
    echo TRUE;exit;
}