2010-03-23 122 views
1

呦。我試圖在PHP中創建一個簡單的登錄系統,我的問題是:我不太瞭解會話。PHP登錄,商店會話變量

現在,當我登錄一個用戶時,我運行了session_register(「user」);但我真的不明白我在做什麼。該會話變量是否包含任何可識別的信息,例如,我可以通過$ _SESSION [「user」]將其取出,還是必須將用戶名存儲在單獨的變量中?謝謝。

回答

10

讓我給你帶來速度。

調用函數session_start();在你的腳本的開始(所以它每執行一次頁面調用)。

這使得會話活動/自動爲該頁面工作。

從這一點上,你可以簡單地使用$ _SESSION數組來設置值。

例如

$_SESSION['hello'] = 'world'; 

下一次頁面加載(其他要求),這WIL工作/發生:

echo $_SESSION['hello']; //Echo's 'world' 

要簡單地摧毀一個變量,沒有設置一個:

unset($_SESSION['hello']); 

摧毀整個會話(以及其中的變量):

session_destroy(); 

這是關於會話基礎知識的全部內容。

0

$ _SESSION ['user']必須設置爲您的用戶名/ ID,以便下次嘗試閱讀時,您將能夠識別該用戶。例如:

login: $ _SESSION ['user'] = some_user_id;

用戶區: $ user = $ _SESSION ['user']; //提取數據庫的用戶,基於$用戶變量 //做點什麼

2

會議能夠存儲你可能會發現有用,所以把信息是由你的任何信息。 要嘗試一些東西出來,請嘗試以下,看看自己:

<?php 

    session_start(); 
    if(isset($_SESSION['foo'])) 
    { 
     echo 'I found something in the session: ' . $_SESSION['foo']; 
    } 
    else 
    { 
     echo 'I found nothing, but I will store it now.'; 
     $_SESSION['foo'] = 'This was a triumph.'; 
    } 

?> 

調用該網站在第一時間應存儲信息,存儲它的第二次將它打印出來。

所以是的,你基本上可以在會話中放入任何你喜歡的東西,例如用戶名。

但請記住,只要用戶關閉瀏覽器,會話就會死亡。