codeigniter:用户个人资料页面

codeigniter : user profile page

您好,我对 codeigniter 中的用户个人资料页面有疑问。 所以这是我的用户控制器:

  <?php
class User extends CI_Controller {
    function users() {
        parent::user();
    }
    function index($id = null) {
    if($id == null) {
      redirect('/', 'refresh');      
    }
else {
    $data['title']  = 'User Page';
    $data['result'] = $this->users_model->get_user_info();
    $data['id'] = $id; 
    $data['main_content'] = "main/profile_view" ;
    $this->load->view('home',$data);
}
}
}
?>

这是模型中的函数:

public function get_user_info(){
        $this->db->where('id' , 'id');
        $q = $this->db->get('users');
        if ($q->num_rows > 0) {
            return $q->result();
        } else {
            return false;

        }
    }

这是路由文件:

$route['user/(:any)'] = "user/index/";

i get this error in localhost/cc/user/1 
Fatal error: Call to a member function get_user_info() on null in C:\xampp\htdocs\cc\application\controllers\user.php on line 12

我想知道如何在视图中显示用户数据

在你的控制器中我认为这一行:

$data['result'] = $this->users_model->get_user_info();

应该是:

$data['result'] = $this->users_model->get_user_info($id);

在你的模型中:

public function get_user_info(){
        $this->db->where('id' , 'id');

应该是这样的:

public function get_user_info($id){
        $this->db->where('id' , $id);

// =================下一题

我试过了,但是当我在 user/ 后面输入一个不存在的 ID 时。 , 它显示配置文件 vue

是的,我打算将它包装在一个 IF 中,但后来变得懒惰了——这是一种方法 检查结果是否没有返回——所以在你检查 $id 是否为 NULL 之后——如果 $data['result'] 没有从模型返回然后转到类似 showUserNotFound($id ).

elseif ( ! $data['result'] = $this->users_model->get_user_info($id) ){

     $this->showUserNotFound($id); } 

else {    $data['title']  = 'User Page';
    $data['id'] = $id; 
    $data['main_content'] = "main/profile_view" ;
    $this->load->view('home',$data); }