【问题标题】:Error in getting results from the query in codeigniter从 codeigniter 中的查询获取结果时出错
【发布时间】:2019-07-10 13:38:19
【问题描述】:

我是使用 codeigniter 和 pdo 函数的新手,我试图用我的代码做的是在具有 validate() 函数的模型中获取用户的会话数据,然后将其传递给具有 verify() 的控制器函数,然后在仪表板中显示会话数据(用户名),但我得到的是一个空的用户名:

"Array ( [__ci_last_regenerate] => 1562764863 [logged_in] => 1 [username] => )"

我非常坚持这一点,任何帮助将不胜感激。

“模型”

function validate()
{
    $arr['username'] = $this->input->post('username');
    $arr['password'] = ($this->input->post('password'));
    return $this->db->get_where('students',$arr)->row();
    $this->db->close();
}

“控制器”

public function verify()
{
    $this->load->model('student/Studentinfo_model');
    $check = $this->Studentinfo_model->validate();
    if ($check) {

        $this->session->set_userdata('logged_in', TRUE);
        $this->session->set_userdata('username', $username);

        $user=$this->Studentinfo_model->validate();

        redirect('student/dashboard');

    } else {
        redirect('student');
    }
}



public function dashboard()
{
    if ($this->session->userdata('logged_in'))
    {
        $this->load->view('login-templates/header');
        $this->load->view('student/dashboard');
        print_r($this->session->all_userdata());
    }
    else {
         redirect(site_url(student));
    }
}

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    我已经在这里尝试了一些解决方案,下面是我的新代码。

    控制器

    public function verify()
    {
        $this->load->model('student/Studentinfo_model');
        $query = $this->Studentinfo_model->validate();
    
        if ($query)
        {
            $data = array(
                'user' => $query->user, 
            );
    
            $this->session->set_userdata('logged_in', TRUE);
            $this->session->set_userdata($data);
    
            redirect('student/dashboard');
    
        } else {
            redirect('student');
        }
    }
    

    型号

    function validate()
    {
        $this->db->where('user', $this->input->post('user'));
        $this->db->where('pass', $this->input->post('pass'));
        $query = $this->db->get('students');
    
        if($query->num_rows() == 1)
        {
            return $query->row();
        }
        else
        {
            return false;
        }
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-27
      • 1970-01-01
      • 2014-10-04
      相关资源
      最近更新 更多