2015-11-16 36 views
-1

我想在php中使用$_SESSION來顯示數據庫中的用戶名。如何在變量中使用PHP中的會話

在我的項目有哪些存儲所有信息,登錄和註銷,並從該表中的一個表要在不斷的PHP頁面來顯示用戶名

+1

使用'$ _SESSION [ '']'......你需要這個'在session_start()'運行會話。 –

回答

1

嘗試......

一個PHP會話可以通過調用session_start()函數輕鬆啓動。該函數首先檢查會話是否已經啓動,如果沒有啓動則啓動一個會話。建議將呼叫發送到頁面的開始處的session_start()。

會話變量存儲在名爲$ _SESSION []的關聯數組中。這些變量可以在會話的生命週期中訪問。

以下示例啓動一個會話,然後註冊一個稱爲計數器的變量,該變量在會話期間每次訪問頁面時都會遞增。

利用isset()函數檢查會話變量是否已經設置。

放在一個test.php的文件,此代碼,加載此文件多次看到的結果 -

<?php 
    session_start(); 

    if(isset($_SESSION['counter'])) 
    { 
     $_SESSION['counter'] += 1; 
    } 
    else 
    { 
     $_SESSION['counter'] = 1; 
    } 
    $msg = "You have visited this page ". $_SESSION['counter']; 
    $msg .= "in this session."; 
?> 
<html> 

    <head> 
     <title>Setting up a PHP session</title> 
    </head> 

    <body> 
     <?php echo ($msg); ?> 
    </body> 

</html> 

銷燬PHP會話

一個PHP會議可以通過session_destroy被破壞()函數。這個函數不需要任何參數,一次調用就可以銷燬所有的會話變量。如果要銷燬單個會話變量,則可以使用unset()函數來取消設置會話變量。

這裏是取消設置一個變量的例子 -

<?php 
    unset($_SESSION['counter']); 
?> 

這裏是一個將摧毀所有的會話變量調用 -

<?php 
    session_destroy(); 
?> 

開啓自動會話 你不需要如果您可以在php.ini文件中將session.auto_start變量設置爲1,可以調用start_session()函數在用戶訪問您的網站時啓動會話。

沒有cookie的會話 可能有用戶不允許在他們的機器上存儲cookie的情況。所以還有另一種方法將會話ID發送給瀏覽器。

或者,您可以使用會話開始時定義的常量SID。如果客戶端沒有發送適當的會話cookie,則其格式爲session_name = session_id。否則,它將展開爲空字符串。因此,您可以無條件地將其嵌入到URL中。

以下示例演示如何註冊變量以及如何使用SID正確鏈接到另一個頁面。

<?php 
    session_start(); 

    if (isset($_SESSION['counter'])) { 
     $_SESSION['counter'] = 1; 
    } 
    else { 
     $_SESSION['counter']++; 
    } 

    $msg = "You have visited this page ". $_SESSION['counter']; 
    $msg .= "in this session."; 

    echo ($msg); 
?> 
<p> 
    To continue click following link <br /> 

    <a href="nextpage.php?<?php echo htmlspecialchars(SID); ?>"> 
</p> 

編號:http://www.tutorialspoint.com/php/php_sessions.htm