会话ini设置修改时出错

时间:2016-10-27 06:03:44

标签: codeigniter-3

遇到PHP错误

Severity: Warning
Message: ini_set(): A session is active. You cannot change the session module's ini settings at this time
Filename: Session/Session.php
Line Number: 316
Backtrace:
File: C:\xampp\htdocs\testing\index.php
Line: 315
Function: require_once



<?php
	session_start(); //we need to start session in order to access it through CI
class Adminlogin extends CI_Controller {

	public function _construct(){
	parent::_construct();

	//Load form helper library
	$this->load->helper('form');
	//Load form validation library
	$this->load->library('form_validation');
	//Load session library
	$this->load->library('session');
	//Load database
	$this->load->model('login_database');
	}

	//show login page
	public function index()
	{
		$this->load->view('admin_login');
	}
	//show registration page
	public function user_registration_show(){
		$this->load->view('admin_signup');
	}
	//Validate and store registration data in database
	public function new_user_registration(){

	//Check Validation for user input in SignUp form
		$this->form_validation->set_rules('admin_username', 'Username','trim|required|xss_clean');
		$this->form_validation->set_rules('admin_password', 'Password','trim|required|xss_clean');
	if($this->form_validation->run()== FALSE){
		$this->load->view('admin_signup');}
	else{
		$data = array(
			'admin_username' => $this->input->post('username'),
			'admin_password' => $this->input->post('password'));
	$result = $this->login_database->registration_insert($data);
	if($result == TRUE){
		$data['message_display'] = 'Registration Successfully !';
	$this->load->view('admin_login', $data);
	}else{
		$data['message_display'] = 'Username already exist';
	$this->load->view('admin_signup',$data);
	}
	}
	}

	//Check for user login process
	public function user_login_process(){
	$this->form_validation->set_rules('admin_username','Username', 'trim|required|xss_clean');
	$this->form_validation->set_rules('admin_password','Password', 'trim|required|xss_clean');
	if($this->form_validation->run() == FALSE){
	if(isset($this->session->userdata['loggen_in'])){
	   $this->load->view('Admin/admin_dashboard');
	}else{
		$this->load->view('admin_login');
	}
	}else{
	 $data = array(
	 	'admin_username' => $this->input->post('username'),
	 	'admin_password' => $this->input->post('password'));
	$result = $this->login_database->login($data);
	if($result == TRUE) {

	$username = $this->input->post('username');
	$result = $this->login_database->read_user_information($username);
	if($result != false){
		$session_data = array(
			'username' => $result[0]->admin_username,
			'password' => $result[0]->admin_password);
	//Add user data in session
		$this->session->set_userdata('logged_in', $session_data);
		$this->load->view('Admin/admin_dashboard');
	}else{
	$data = array(
		'error_message' => 'Invalid Username or Password');
	$this->load->view('admin_login',$data);
	}
	}
	}

	
}
}
?>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

请删除第一行session_start();或将其更改为..

// session_start(); //I do Not need this as I am using CI Sessions.

您正在使用已在代码中加载的CodeIgniters会话...

$this->load->library('session');

作为一个旁白: 您不需要PHP文件中的结尾?>,它是文件中的最后一个标记。