首页 > 后端开发 > php教程 > ci框架$this->db->where得不到结果

ci框架$this->db->where得不到结果

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
发布: 2016-06-06 20:14:16
原创
1325 人浏览过

用ci写登录代码,用$this->db->where查询数据库验证账号密码时得到的总是空的返回值
以下是控制器中验证的函数代码:

<code>public function validate_credentials(){
        $this->load->model('Bookmark_models');
        $query = $this->Bookmark_models->where();
        
        if ($query){
            $data = array('username' => $this->input->post('username'),
                          'is_loggrd_in' => true);
            $this->session->set_userdata($data);
            $this->load->view('logged_in_area');
        }else {
            $this->login();
        }
</code>
登录后复制
登录后复制

以下是模型中的代码:

<code>public function where(){
        $this->db->where('username',$this->input->post('username'));
        $this->db->where('passwd',sha1($this->input->post('password')));
        $query = $this->db->get('user');
        
        if ($query->num_rows == 1){
            return true;
        }</code>
登录后复制
登录后复制

回复内容:

用ci写登录代码,用$this->db->where查询数据库验证账号密码时得到的总是空的返回值
以下是控制器中验证的函数代码:

<code>public function validate_credentials(){
        $this->load->model('Bookmark_models');
        $query = $this->Bookmark_models->where();
        
        if ($query){
            $data = array('username' => $this->input->post('username'),
                          'is_loggrd_in' => true);
            $this->session->set_userdata($data);
            $this->load->view('logged_in_area');
        }else {
            $this->login();
        }
</code>
登录后复制
登录后复制

以下是模型中的代码:

<code>public function where(){
        $this->db->where('username',$this->input->post('username'));
        $this->db->where('passwd',sha1($this->input->post('password')));
        $query = $this->db->get('user');
        
        if ($query->num_rows == 1){
            return true;
        }</code>
登录后复制
登录后复制

echo $this->db->last_query();输出原生sql语句到数据库中执行看有没有结果.
num_rows()是个方法而不是属性
另外也不建议你这么写,模型中就不建议做控制器的事了

<code>public function login($user, $password)
    {
        return $this->db->where('username', $user)
            ->where('password', sha1($password))
            ->get('user')
            ->row();
    }
</code>
登录后复制
<code>public function where(){
        $this->db->where('username',$this->input->post('username'));
        $this->db->where('passwd',sha1($this->input->post('password')));
        $query = $this->db->get('user');
        echo $this->db->last_query();exit();
        if ($query->num_rows() ){
            return true;
        }
        return false;</code>
登录后复制
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
怎么学好php
来自于 1970-01-01 08:00:00
0
0
0
PHP扩展intl
来自于 1970-01-01 08:00:00
0
0
0
php数据获取?
来自于 1970-01-01 08:00:00
0
0
0
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板