php 簡單的登入登出執行個體程式(session)_PHP教程

來源:互聯網
上載者:User
利用php執行個體登入登出我們一般會藉助於session來儲存記錄使用者登入成功的資訊,然後退出時我們再使用unset來清除session即可實現使用者登入登出功能了,下面我來介紹一個簡單的執行個體。

關於會話處理

HTTP 是一種無狀態的協議,說明每次請求的處理都與之前或之後的 請求無關,但是為了能夠調整使用者特有的行為和喜好設定,出現了一種在用戶端儲存少量資訊(常稱為cookie)的實踐,但由於 cookie 大小的限制、所允許的 cookie 數量以及 cookie 的實現上的各種不一致,出現了另外一種解決方案:會話處理。

會話處理的實現方式是為每位網站訪問者分配一個稱之為會話 ID(SID)的唯一識別屬性,然後將此 SID 與任意數量的資料關聯。

開始會話

session_start();

建立會話變數

代碼如下 複製代碼

$_SESSION['username'] = “jason”;

刪除會話變數

代碼如下 複製代碼
unset($_SESSION['username']);

簡單的登入登出

代碼如下 複製代碼

$supervisor = "admin";
$superpsw = "passwd";

// 檢查是否提交表單
if (isset($_POST['superadmin']))
{
if (!($_POST['supername'] == $supervisor) || !($_POST['superpass'] == $superpsw))
{
echo "使用者名稱或密碼錯誤";
exit;
}
else
{
session_start();
$_SESSION["superlogin"] = $_POST['supername'];
}
} else {
session_start();
// 檢查是否設定了會話變數,即是否已經登入,如果沒有,顯示登入頁面
if (! isset($_SESSION["superlogin"]) )
{
echo "";
exit;
}
}
// 由使用者銷毀會話變數,登出
if (isset($_GET['logout'])) {
unset($_SESSION['superlogin']);
header("Location:index.php");
}

假設將此檔案命名為include.php,將其包含到要驗證登入的頁面即可,例如 index.php

代碼如下 複製代碼

require “include.php”;
?>


管理



登出

歡迎進入



如此訪問 index.php 頁面時將進入登入頁面,登入後顯示 index.php 頁面內容,這個過程一直持續到使用者結束會話,如關閉瀏覽器或點擊登出按鈕,但是會話本身在PHP伺服器有一個預設的生存期。

有效會話的期間由 php.ini 所控制,預設為1440秒,即24分鐘

session.gc_maxlifetime = 1440

PS:本文是個範例,用簡單的代碼來做說明,實際應用中會採用更加複雜的控制機制。

http://www.bkjia.com/PHPjc/632693.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/632693.htmlTechArticle利用php執行個體登入登出我們一般會藉助於session來儲存記錄使用者登入成功的資訊,然後退出時我們再使用unset來清除session即可實現使用者登入登出...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.