2012-07-12 70 views
0

我在我的web應用程序中使用php會話。對於單個用戶,我需要存儲一些變量,例如用戶名,表示用戶是否登錄的標誌等。我想將一個數組賦值給$ _SESSION,作爲一個具有所有值的變量。有沒有辦法做到這一點?會話處理 - 如何區分用戶

Charu

+0

到目前爲止您嘗試了什麼?你可以使用像$ _SESSION ['user_data'] = array($ username,$ user_id); – 2012-07-12 06:24:43

回答

1

基本上會話是用來存儲數據user-specific(狀態)和身份。要爲頁面啓用會話,請在向響應緩衝區寫入任何內容之前調用session_start()方法。

<?php 
    session_start(); 
    .... 
?> 
+0

我明白了,謝謝... – 2012-07-12 06:32:02

0

你到目前爲止嘗試過什麼?你可以使用數據從數據庫中作爲唯一標識符的用戶:

session_start(); 
$_SESSION['user_data'] = array('username'=>$username, 'user_id'=>$user_id); 
+0

非常感謝.... :-) – 2012-07-12 06:32:23

1

正如其他人說,會議是用於存儲用戶特定的信息的一種方式。但是,如果你對它的成就感到困惑,這就是故事:

當有人啓動瀏覽器並向你的網站發送請求時,你的web服務器會發現這是一個瀏覽你的網站的新會話,所以它分配一個唯一的號碼,因爲它的會話ID爲,並向您返回此會話ID(通常由Cookie完成),即Web服務器包含一個'SET-COOKIE'http響應頭字段,請參閱有關cookies的更多信息。
現在,您的瀏覽器會在將來發送給您的Web服務器的每個請求中發送之前獲得的「會話ID」。
因此,您的Web服務器現在可以將您的流量與其他流量區分開來,並且您創建的每個$ _SESSION []變量都將分配給相應的會話ID。
我希望它很清楚。
有關會話和cookie的更多信息,請參閱this鏈接。