2014-02-15 1 views
-3

нужна помощь.Как вставить данные в сеанс с помощью codeigniter

$ses_data = array('session_un' => $_POST['username'],'session_pd' => $_POST['password'],'session_id' => 1,'logged_in' => TRUE); 

$this->session->set_userdata($session_data); 
print_r($_SESSION); 

Результат:

PHP-ошибка была обнаружена

Серьезность: Обратите внимание

Сообщение: Undefined переменной: session_data

Имя файла: Контроллеры/task.php

Номер строки: 110

+4

$ ses_data или $ session_data? – sinisake

ответ

1

Это происходит потому, что ваш используете $ses_data в качестве переменной, а затем переключаться на $session_data, изменения, как следовать

$ses_data = array('session_un' => $_POST['username'],'session_pd' => $_POST['password'],'session_id' => 1,'logged_in' => TRUE); 

$this->session->set_userdata($ses_data); 
          //^ use here $ses_data instead of $session_data 
          // which is not defined 
print_r($_SESSION); 
+0

все еще сталкивается ошибку ниже в ссылке 111 (print_r ($ _ SESSION)) PHP-ошибка была обнаружена Серьезность: Обратите внимание Сообщение: Undefined переменной: _SESSION Имя файла: Контроллеры/task.php Номер строки: 111 –

+0

@WaqasAhmed вы начали сеанс? – Fabio

+0

Сеанс Codeigniter не использует встроенную сессию php ... в ответе выше вы можете увидеть, как установить и получить сеансы ci ... – sinisake

0

$session_data должен быть $ses_data.

$session_data не был определен, когда вы назвали этот метод.

1

Если вы хотите использовать CodeIgniter:

$ses_data = array('session_un' => $this->input->post('username'), 
'session_pd' => $this->input->post('password'),'session_id' => 1, 
'logged_in' => TRUE); 

$this->session->set_userdata($ses_data); 

print_r($this->session->all_userdata()); 
1

Вы по-прежнему сталкиваются с $ _SESSION не определено, так как CodeIgniter, как сказано в документации:

... не использует родные PHP сессии. Он генерирует собственный сеанс данных , предлагая большую гибкость для разработчиков.

Таким образом, нет доступных $ _SESSION, поскольку вы не установили session_start() в верхней части каждой страницы.

Имейте в виду, что $ _SESSION является родным PHP.

$ CI-> session - это объект класса CI и не имеет ничего общего с $ _SESSION.

Смежные вопросы