显示从codeigniter中登录的用户详细信息

时间:2015-03-17 19:13:06

标签: php mysql codeigniter phpmyadmin

查看控制器

<?php

class Site extends CI_Controller {
    function homePage() {
        $this->load->view('homePage');
    }

    function getValues($username) {
        $this->load->model('customer_model');
        $data['results']=$this->customer_model->getOne($username);
        $this->load->view('view_db',$data);
    }
}

我想将登录的用户详细信息从数据库显示到页面。用户登录的位置,它指向主页,在那里,有链接指示根据我的设计查看用户详细信息..

查看登录控制器

<?php

class Login extends CI_Controller {
    function index() {
        //loads the main page to be displaye din the page
        $this->load->view('login_form');
    }

    function validate_credentials() {
        $this->load->model('customer_model');
        $query = $this->customer_model->validate();

        if ($query) {//if the user credidential is validated 
            $data = array(
                'username' => $this->input->post('username'),
                'is_logged_in' => true
            );

            //retrieving the session data
            $this->session->set_userdata($data);
            redirect('site/homePage');
        } else {
            $this->index();
    }
}

模型视图---我已经提到只获得特定用户

function getOne($username){
    $query=$this->db->query('SELECT * FROM customer WHERE username = $username');
    //$this->db->select('*');
    //$query= $this->db->get('customer');
    return $query->result();
}

和视图..现在我想要检索值并稍后检查我可以改进界面;)

<?php
//print_r($results);

foreach($results as $row) {
    echo $row->id;
    echo $row->last_name;
    echo "<br/>";
}

?>

我知道它应该通过会议来完成..但是怎么做?

1 个答案:

答案 0 :(得分:1)

好的,当这个现在登录的人点击链接时会将他们带到getValues()方法。您可以检查他们是否已登录,然后他们是否根据会话username密钥检索他们的信息。

function getValues(){

    if ($this->session->userdata('is_logged_in')) {
        $username = $this->session->userdata('username'); 
        //Get your db results
        $this->load->model('customer_model');
        $data['results']=$this->customer_model->getOne($username);
        $this->load->view('view_db',$data);

    } else{
        //What you want to happen when they are not logged in. 

    }

这有意义吗?