【发布时间】:2015-04-28 06:22:13
【问题描述】:
我在Codeigniter 开发了一个应用程序,一切都很顺利,但我有一个问题如下:
我想在前端和后端首次登录后将autologin 实现到仪表板。
说明:
当我第一次登录admin side 时,它转到admin dashboard 并关闭tab/browser 而不点击logout button 并放置admin 链接它进入管理仪表板而无需再次登录,到这里一切都很顺利,但是当我输入 front end link (after first time login and closing tab) 时,它不会转到 admin 仪表板并显示类似
页面重定向不正确
我在前端也遇到了同样的问题。
我想这样做是因为这是客户的要求。
请帮我解决这个问题。谢谢。
这是我的索引函数
if($_COOKIE['AS_AD_SES_ADMIN_ID']!='' && $_COOKIE['stay_signedin']=='1')
{
$username = $_COOKIE['ADMIN_USERNAME'];
$password = $_COOKIE['ADMIN_PASS'];
$result = $this->verifylogin->login($username, $password);
foreach($result as $row)
{
$sess_array = array(
'AS_AD_SES_ADMIN_ID' => $row->fld_id,
'AS_AD_SES_ADMIN_FULL_NAME' => $row->fld_user_name,
'AS_AD_SES_ADMIN_NAME' => $row->fld_adm_name,
'AS_AD_SES_LOGIN_TIME' => date('h:i:s A'),
'AS_AD_SES_LOGIN_DATE' => date("d-m-Y"),
'AS_SES_ACCESS_LEVEL' => $row->fld_access_level,
'AS_TAB_TITLE' => 'Welcome to Project',
'logged_in' => TRUE
);
$this->session->set_userdata($sess_array);
}
$this->load->view('dashboard');
}else{
redirect(base_url());
}
Verifylogin机型登录功能如下
function login($username, $password)
{
$ip_address=$_SERVER['REMOTE_ADDR'];
$this -> db -> select('fld_id, fld_user_name,fld_adm_name,fld_adm_pwd,fld_access_level');
$this -> db -> from('tbl_admin');
$this -> db -> where('fld_user_name',$username);
$query = $this -> db -> get();
if($query -> num_rows() == 1)
{
$res = $query->row();
$pass = $res->fld_adm_pwd;
$pass1 = $this->encrypt->decode($pass);
if($pass1 == $password)
{
$password = $pass;
$query = $this->db->query("SELECT fld_id,fld_user_name,fld_adm_name,fld_access_level,fld_adm_pwd,fld_stay_signed_in FROM tbl_admin where fld_user_name = '".$username."' and fld_adm_pwd = '".trim($password)."' and fld_isdeleted !=1 and fld_status = 'Active'");
if($query->num_rows() == 1)
{
return $query->result();
}
}
else
{
return false;
}
}
}
【问题讨论】:
-
你的代码在哪里??
-
@saty 感谢您的即时回复,我在管理员登录时使用了 cookie,然后我为它设置了 cookie。
-
在看不到您的代码之前,我们无法为您提供帮助?
-
好的,我将编辑我的问题并输入我的管理端控制器代码。
-
为什么使用不必要的 foreach 循环?
标签: php codeigniter cookies