【问题标题】:Updating a tinyint filed in database using codeigniter使用 codeigniter 更新数据库中的 tinyint 字段
【发布时间】:2013-12-14 10:23:42
【问题描述】:

每当单击按钮时,我都会尝试将名为 inactive 的 tinyint 字段从 0 更新为 1。我确定我得到了正确的 id,所以那里没有问题,但我无法更新该字段。

这是我的视图代码。

<a id="deactivate" role="button" href=<?php echo site_url('user/deactivate'); ?>>Deactivate</a>
<script>
$(document).ready(function() {
$('a#deactivate').bind('click',function(event){
      if (confirm("Are you sure you want to deactivate " + id_deactivate + "?")) {
            url_deactivate = ('<?php echo site_url('user/deactivate'); ?>');
                $('a#deactivate').attr('href', function() {
                    var newURL0 =  url_deactivate + "/" + id_deactivate;
                    console.log(newURL0);
                    return newURL0;
                })
          } else{
                event.preventDefault()
          }
    });
});
</script>

对于模型:

public function deactivateUser($id, $data){
        if($this->db->update('user', "`inactive` = '".$data."'", "`user_id` = '".$id."'")){
            return true;
        }
        return false;
    }

对于控制器:

public function deactivate($id){
    $this->session->set_userdata('page', 'user'); 
    $this->session->set_userdata('action', 'view');
    $data['inactive'] = 1;
    $this->user_model->deactivateUser($id, $data);
    redirect('user');
}

我很确定问题出在控制器上,但我不知道如何解决。谁能帮我?提前谢谢你。

【问题讨论】:

    标签: mysql codeigniter sql-update tinyint


    【解决方案1】:

    在模型中试试这个

        $this->db->where('user_id', $id);
        $update = $this->db->update('user', $data); 
        if($update) return TRUE;
        return FALSE:
    

    查看更多信息here

    【讨论】:

      【解决方案2】:

      不要在确认 JS 对话框后设置 href 值(这种做法真的很奇怪),只需在 HTML 中设置 href 即可。

      然后你启动 JS 确认

      return (confirm("Are you sure you want to deactivate " + id_deactivate + "?")) ? true : false;
      

      如果您返回true(当用户接受确认时),您可以让默认操作按照href 中的链接运行。如果用户不接受确认,您将取消默认操作并返回 false,然后什么也不会发生。

      【讨论】:

      • 感谢您的建议。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-02
      • 2011-03-19
      • 2017-09-04
      • 1970-01-01
      • 2023-04-06
      • 1970-01-01
      相关资源
      最近更新 更多