【问题标题】:Apart view files or session check on one view file?分开视图文件或对一个视图文件进行会话检查?
【发布时间】:2011-07-23 14:41:53
【问题描述】:

我正在使用使用 MVC 模式的 Codeigniter 2.0.1 创建一个配置文件系统。现在我想要一个用于未登录的公共用户的个人资料页面和一个用于已登录用户的个人资料页面。用户登录的个人资料页面包含其他页面之外的其他选项。我应该为每一页制作一个单独的视图文件,还是应该在一页上进行会话检查?我问这个是因为我读到检查不应该在视图文件中。


我的问题是我是否可以对视图文件进行一些会话检查...例如:当用户访问其自己的个人资料时,我会给它一个链接以转到设置页面

 if (this->session->userdata('uid') == 20) {
    <a href="edit_profile">Edit my profile</a>
}

这是否违反 MVC 模型,我是否应该在控制器中进行此会话检查并拆分视图文件?

【问题讨论】:

    标签: codeigniter


    【解决方案1】:

    如果我的理解正确,您需要查看访问您网站的此人是否已登录并有权查看该页面。

    您可以在控制器中执行此操作,它会按照以下方式进行:

    if(this->session->userdata('logged_in')) {
    
     $this->load->view('profile_private');
    
    } else {
    
     $this->load->view('profile_public');
    
    }
    

    虽然显然不止于此。

    看看 Codeigniter 的会话类http://ellislab.com/codeigniter/user_guide/libraries/sessions.html

    还有用户认证:http://www.google.co.uk/search?q=codeigniter+authentication

    当然,SO 上已经有答案了:User authentication with CodeIgniter

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-10
      • 2018-08-10
      • 2015-09-14
      • 1970-01-01
      • 1970-01-01
      • 2019-03-28
      • 2018-04-09
      相关资源
      最近更新 更多