2014-02-15 49 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錯誤遇到

嚴重性:注意

消息:未定義變量: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錯誤 嚴重性:注意 消息:未定義變量:_SESSION 文件名:控制器/ task.php 行號:111 –

+0

@WaqasAhmed你開始會議了嗎? – Fabio

+0

Codeigniter會話不使用原生php會話......在上面的答案中,您可以看到如何設置和獲取ci會話...... – sinisake

0

$session_data應該是$ses_data

$session_data在您調用該方法時未定義。

1

如果你想使用的笨:

$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不確定,因爲笨,如文檔說:

...不使用PHP本身的會話。它生成自己的會話 數據,爲開發人員提供更多的靈活性。

所以沒有$ _SESSION可用,因爲你沒有在每個頁面頂部設置session_start()。

請記住,$ _SESSION是PHP本機。

$ CI-> session是來自CI類的對象,與$ _SESSION無關。

相關問題