我正在阅读Codeigniter 2.2教程,我不清楚如何使用会话登录.
假设我有一个login.php,它用数据库检查用户数据.然后,如果它确定,那么我应该在控制器中设置会话?
$this->load->library('session');
Run Code Online (Sandbox Code Playgroud)
然后在admin.php页面中我应该检查会话是否存在?:
$this->session->user_data('item'); ??
Run Code Online (Sandbox Code Playgroud)
或者我该如何检查此人是否已登录?
谢谢
jus*_*mer 10
根据文档,要在会话中执行任何自定义操作,您需要加载会话库.如果您打算在整个应用程序中使用会话,我建议您自动加载库.您可以在config/autoload.php中执行此操作.
$autoload['libraries'] = array('session');
然后你不必$this->load->library('session');在每一页上使用.
加载库后,可以根据数据库中的某些信息设置自定义信息.所以在你的情况下,这将在login.php中:
$this->session->set_userdata('userId', 'myId');其中userId是会话变量的名称,并且myId是值.
然后,在后续页面(admin.php)上,您可以检查该值是否存在.
if($this->session->userdata('userId') == '') { //take them back to signin }