簡體   English   中英

我需要在Codeigniter中使用會話嗎?

[英]Do I need to use sessions in Codeigniter?

或一般在PHP中。 我需要檢查用戶在訪問特定頁面時是否已登錄。 教程建議使用會話,例如

$sessionData = array('username'=>$username, 'status'=>1);
$this->session->set_userdata($sessionData);

為了獲得更好的安全性,他們建議使用db表。

如果我只是將用戶名和狀態存儲在數據庫中,然后在人們注銷時將狀態更改為0,該怎么辦?

每當他們需要訪問特定頁面時,我只需檢查狀態1。

  1. 當您調用session_start() PHP在用戶的瀏覽器中使用隨機生成的ID設置cookie。
  2. 從那時起,只要您在$_SESSION存儲一個值,該文件就會(默認)存儲在腳本末尾的session.save_path中的文件中。 該文件由會話ID標識。
  3. 在隨后的請求中,客戶端將其會話ID cookie發送回服務器,因此,當您在腳本中調用session_start() ,PHP可以去檢索該會話文件並將其內容恢復到$_SESSION

從字面上看, 將要編寫的所有內容都將只是重新實現此已編寫的行為,但是這些年來,PHP項目沒有增加安全性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM