Php 如何存储用户登录的次数?

Php 如何存储用户登录的次数?,php,codeigniter,Php,Codeigniter,型号 function Updateno($user,$data){ $this->db->where('username', $user); $this->db->update('user', $data); } 控制器 //user login function function Ulogin(){ if($this->session->userdata('user'))

型号

function Updateno($user,$data){
       $this->db->where('username', $user);  
        $this->db->update('user', $data);
    }
控制器

//user login function
    function Ulogin(){

        if($this->session->userdata('user'))
        {
             $data['user'] = $this->session->userdata('user');
            $this->load->view("User/choosecategory",$data);
        }
        else
        {        
        $data = array(
        'username' =>$this->input->post('username'),
        'password' =>$this->input->post('password'),
        );
        $this->form_validation->set_rules('username','UserName','required');
        $this->form_validation->set_rules('password','Password','required');
        if($this->form_validation->run()==false)
            {
            $this->load->view('User/login');
            }
        else
            {
            if($this->user_model->userlogin($data)==false)
            {
                $data['error'] = '<div class="alert alert-danger text-danger">Please Provide Valid Username/Password!</div>';
            $this->load->view('User/login',$data);
            }
            else
            {
               $this->session->set_userdata('user',$data['username']);
                $data['user'] = $this->session->userdata('user');
                $counter = array(
        'logged_in' =>'logged_in'+1
        ); 
        $this->user_model->Updateno($this->session->userdata('user'),$counter);
               $this->load->view("User/choosecategory",$data);
            }
            }
        }
    }
//用户登录函数
函数Ulogin(){
如果($this->session->userdata('user'))
{
$data['user']=$this->session->userdata('user');
$this->load->view(“用户/选择类别”,$data);
}
其他的
{        
$data=数组(
'username'=>this->input->post('username'),
'password'=>this->input->post('password'),
);
$this->form_validation->set_规则('username','username','required');
$this->form_validation->set_规则('password','password','required');
如果($this->form\u validation->run()==false)
{
$this->load->view('User/login');
}
其他的
{
如果($this->user\u model->userlogin($data)==false)
{
$data['error']='请提供有效的用户名/密码!';
$this->load->view('User/login',$data);
}
其他的
{
$this->session->set_userdata('user',$data['username');
$data['user']=$this->session->userdata('user');
$counter=数组(
“登录”=>“登录”+1
); 
$this->user\u model->Updateno($this->session->userdata('user'),$counter);
$this->load->view(“用户/选择类别”,$data);
}
}
}
}

我希望每当用户成功登录时,我的登录cloumn值增加1,但在此代码中,登录列的值始终为1,请帮助这里的任何人

您要做的是:

$value = explode("logged_in", $counter['logged_in']); //get the number of the counter
$counter['logged_in'] = 'logged_in' . ((int)$value[1] +1); //increase value by 1 
这将从字符串中获取当前计数器值,并将其增加1

我制作了一个演示来演示如何使用它


演示:

这里只需将值增加1

请尝试下面的代码

你的模型

function Updateno($user)
{
    $this->db->where('username', $user); 
    $this->db->set("logged_in","logged_in+1",false);
    $this->db->update('user');
}
在你的控制器里

$this->user_model->Updateno($this->session->userdata('user'));

我在数组中给出它,比如$counter=array('logged\u in'=>'logged\u in'+1);在上次检查中的控制器中使用
echo$this->db->last_query()
打印更新查询并检查返回的内容,并将数组更改为
$counter=array('logged_in'=>“'logged_in'+1”)它不工作,这将值更改为10@John康德我理解他的问题,他自己写了这段代码,他试图增加价值,但失败了,他在这件事上寻求帮助。我甚至不知道这里缺少了什么——除了这篇文章可以有更好的结构这一事实之外,这个值存储在一个数据库中@sintakonte我想我看错了这个问题。我已经改变了我的答案,尽管你的答案看起来更清晰