php - 在 codeignitor 中使用 cookie 登录时记住我复选框
问题描述
我想在单击记住我复选框时保存电子邮件和密码,并且应该在记住我时设置 cookie。登录工作正常。请帮助我使用 codeignitor 中的代码这是我的控制器代码:
public function loginaction()
{
$email=$this->input->post('email');
$password=$this->input->post('password');
$where = array('email'=>$email,'password'=>$password);
$tbname='login';
$query = $this->Insert_Model->viewdata($tbname,$where);
if(empty($query))
{
$data['msg']="Invalid email or password";
$this->load->view('login',$data);
}
else
{
redirect('dashboardv1');
}
}
下面是我实现的 cookie 代码:
function set()
{
$cookie= array(
'name' => 'chkremember',
'value' => 'test',
'expire' => '300',
'secure' => TRUE
);
$this->input->set_cookie($cookie);
}
function get()
{
echo $this->input->cookie('chkremember',true);
}
解决方案
首先你必须包括我在评论部分提到的 cookie 助手
之后在你的控制器中
public function loginaction()
{
$this->load->helper('cookie');
$email=$this->input->post('email');
$password=$this->input->post('password');
$where = array('email'=>$email,'password'=>$password);
$tbname='login';
$query = $this->Insert_Model->viewdata($tbname,$where);
if(empty($query))
{
$data['msg']="Invalid email or password";
$this->load->view('login',$data);
}
else
{
//first you have to delete old cookie and create new one
delete_cookie("email");
delete_cookie("password");
if ($this->input->post('remember') == 'true') {
$userName = array(
'name' => 'email',
'value' => YOUREMAIL,
'expire' => '86500',
'prefix' => '',
'secure' => FALSE
);
$this->input->set_cookie($userName);
$password = array(
'name' => 'password',
'value' => YOURPASSWORD,
'expire' => '86500',
'prefix' => '',
'secure' => FALSE
);
$this->input->set_cookie($password);
}
redirect('dashboardv1');
}
}
获取您可以在下面的代码中使用的 cookie
<?php echo get_cookie('email'); ?>
<?php echo get_cookie('password'); ?>
推荐阅读
- c# - 如何通过 WMI 启用 DHCP 并从适配器中删除 IP
- javascript - 通过添加/删除 EventListener 来打开/关闭文档 touchmove
- python - 如何在图像上绘制矢量场?
- swift - 无法在 swift 中使用 CLPlacemark 获取 subLocality
- docker - 在 Jenkins Docker 代理中使用测试容器:容器无法启动,NoRouteToHostException
- android - SQLite 是否可以跨 react native、iOS 和 android 进行读/写?
- sql - SUM 总小时数
- sql-server - 对于 SQL 函数,字符串或二进制数据将被截断
- html - 什么格式上下文适用于不创建自己的元素?
- java - 使用 BiFunction 代替 Comparator 不起作用