脚本宝典收集整理的这篇文章主要介绍了php – 在CodeIgniter 3.1.2中重定向后会话数据丢失,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
这是我的登录脚本
public function login(){ if(!empty($_SESSION['user_id'])){//Meaning you are LOGged in //We inform you $this->session->set_flashdata('msg',"<div class='alert alert-success'><span class=''></span> You are already logged in as <strong>".$this->session->user_name."</strong></div>"); //And send you back to your dashboard return redirect('/account/dashboard'); } if($this->input->post()){ $this->load->library('form_validation'); $this->form_validation->set_rules('email','Email','required|valid_email'); $this->form_validation->set_rules('password','Password','required'); if($this->form_validation->run() == TRUE){ $creds=['email'=>$this->input->post('email'),'password'=>$this->input->post('password')]; $this->load->model('user/user_model'); $user=$this->user_model->login($creds); if(!$user){ $data['error_msg']="Inavlid login details. Please retry"; }else{ $user->user_tyPE=(!empty($user->user_type))?:'2'; $userdata=['user_id'=>$user->id,'user_name'=>$user->name,'user_email'=>$user->email,'user_type'=>$user->user_type]; $this->session->set_userdata($userdata); $this->session->set_flashdata('msg','<div class="alert alert-success"><span class="fa fa-check"></span> Logged in as '.$this->session->userdata('user_name').'</div>'); return redirect('account/dashboard'); } } } $data['title']="Login"; $this->load->view('template/auth/header'); $this->load->view('account/login',$data); $this->load->view('template/auth/footer'); }
$config['base_url'] = 'http://localhost/tmpad/'; $config['allow_get_array'] = TRUE; $config['enable_query_strings'] = FALSE; $config['controller_trigger'] = 'c'; $config['function_trigger'] = 'm'; $config['directory_trigger'] = 'd'; $config['encryption_key'] = '4%^&*9799809-nkhDFIoUp'; $config['sess_driver'] = 'database'; $config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 7200; $config['sess_save_path'] = 'ci_sessions'; $config['sess_match_ip'] = FALSE; $config['sess_time_to_update'] = 300; $config['sess_regenerate_destroy'] = FALSE; $config['cookie_PRefix'] = ''; $config['cookie_domain'] = 'http://localhost/tmpad/'; $config['cookie_path'] = '/'; $config['cookie_secure'] = FALSE; $config['cookie_httponly'] = FALSE; $config['csrf_protection'] = TRUE; $config['csrf_token_name'] = 'csrf_test_name'; $config['csrf_cookie_name'] = 'csrf_cookie_name'; $config['csrf_expire'] = 7200; $config['csrf_regenerate'] = TRUE; $config['csrf_exclude_uris'] = array();
session在config / autoload.PHP中自动加载
我将不胜感激任何指导或帮助.
谢谢
它在我开发运行PHP7.0之前工作.
目前它只在我的生产服务器上运行Nginx和PHP 5.6.我的开发服务器似乎无法工作,并继续在会话表中重新生成新行.我的开发服务器在hometead virtualBox开发环境中使用PHP7.1,通常用于Laravel项目.
我设法通过迈出这一步来克服这个问题.
1)转到system / libraries / Session / Session.PHP
2)通过添加//来注释session_start().我们想重新定位sessionn_start().
3)到315号线说安全为王,然后注释到351号线
4)然后转到你的主index.PHP(root index.PHP)
5)在顶部添加一次session_start().
6)好的再试一次.希望它有效.我的猜测是它不能与PHP 7.1一起工作,需要在这个Session.PHP文件中进行一些更新.
我的CI版本是3.1.1
以上是脚本宝典为你收集整理的php – 在CodeIgniter 3.1.2中重定向后会话数据丢失全部内容,希望文章能够帮你解决php – 在CodeIgniter 3.1.2中重定向后会话数据丢失所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。