麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > PHP > 正文

PHP session、cookie的會話控制學習

2020-03-22 19:57:26
字體:
來源:轉載
供稿:網友
  • 會話控制是一種面向連接的可靠通信方式,通常根據會話控制記錄判斷用戶登錄的行為。比如:網購和處理郵件時,你可能需要訪問多個頁面,但只要你不退出,在同一個系統上,多個頁面之間互相切換時,還能保持用戶的登錄信息。

    但是http是無狀態的協議,不能維護兩個事物之間的狀態。但一個用戶在請求一個頁面以后再請求另外一個頁面時,還要讓服務器知道這是同一個用戶。可以使用cookie和session解決這個問題。

    cookies(小甜餅的意思)是一種由服務器發送給客戶端的片段信息,存儲在客戶端瀏覽器的內存或硬盤上,在客戶對該服務的請求中發回它。

    格式和描述:

    bool setcookie ( string name [, string html' target='_blank'>value [, int expire [, string path [, string domain [, int secure]]]]])

    setcookie() defines a cookie to be sent along with the rest of the HTTP headers. Like other headers, cookies must be sent before any output from your script (this is a protocol restriction). This requires that you place calls to this function prior to any output, including <html> and <head> tags as well as any whitespace. If output exists prior to calling this function, setcookie() will fail and return FALSE. If setcookie() successfully runs, it will return TRUE. This does not indicate whether the user accepted the cookie.

    www.it165.net

    參數 描述 示例 $name cookie的識別名稱 $value cookie的值 $expire cookie的生存期限 $path cookie在服務器端生效的路徑 $domain cookie所屬服務器域名 $secure 設置cookie是否僅通過https連接
    setcookie()函數的參數說明

    一個簡單的登錄系統:


    <?php        if(isset($_GET["out"])){        setcookie('id','');/*刪除cookie,即把其值設為空*/        setcookie('pass','');        echo "<script>location.href='Untitled 5.php'</script>";    }        if(isset($_POST["name"])&&isset($_POST["password"])){        setcookie('id',$_POST["name"],time()+3600);        setcookie('pass',$_POST["password"],time()+3600);        echo "<script>location.href='Untitled 5.php'</script>";    }        if(isset($_COOKIE['id'])&&$_COOKIE['pass']){        echo "登陸成功<br />用戶名:".$_COOKIE['id']."<br>密碼:".$_COOKIE['pass'];                    echo "<br><a href='Untitled 5.php?out=out'>退出</a>";    }?><form action="" method="post">    用戶:    <input type="text" name="name" /><br /><br />    密碼:    <input type="password" name="password" /><br /><br />    <input type='submit' value="登陸" /></form>


    session

    session的意思是會話,session和cookie都是用來存儲用戶的相關資料,不同之處是session將數據存儲在服務器端。

    客戶端僅需要保存由服務器為用戶創建的一個session標識符,稱為sessionID;而在服務器端保存session變量的值。SessionID是一個不會重復,又不容易被找到規律的,由32為十六進制數組成的字符串。如果用戶阻止cookie的使用,則可以將sessionid保存在用戶瀏覽器地址欄的URL中。

    當某個用戶想web服務器發出請求時,服務器首先會檢查這個客戶端的請求里是否已經包含了一個sessionID。如果包含,說明之前已經為此用戶創建過sessionID,服務器則按該sessionID,把session檢索出來使用。如果不含,則為該用戶創建一個session,并且生成一個與此session相關的sessionID,在本次響應中被傳送給客戶端保存。

    為了避免對服務器的過大消耗,session會因為下面兩種情況而自然消失:

    一、用戶關閉瀏覽器。

    二、session指定的有效期限到期。一般PHP系統中對于session的生存時間并無定義,默認為0.可以通過修改php.ini配置文件中有關"session.cookie.lift_time"項目,來設定有效期,以秒為單位指定了發送到瀏覽器cookiecookie的生命周期。

    和cookie不同,session使用前,必須先調用session_start()函數,以便讓PHP核心程序,將和session相關的內建環境變量預先載入內存。

    可使用session_destroy()函數銷毀整個session

    將上面的使用cookie的登錄系統修改為使用session:

    <?php    session_start();    if(isset($_GET["out"])){        unset($_SESSION['id']);/*刪除session中的單個變量*/        unset($_SESSION['pass']);    }        if(isset($_POST["name"])&&isset($_POST["password"])){        $_SESSION['id']=$_POST["name"];        $_SESSION['pass']=$_POST["password"];    }        if(isset($_SESSION['id'])&&$_SESSION['pass']){        echo "登陸成功<br />用戶名:".$_SESSION['id']."<br>密碼:".$_SESSION['pass'];                    echo "<br><a href='Untitled 5.php?out=out'>退出</a>";    }?><form action="" method="post">    用戶:    <input type="text" name="name" /><br /><br />    密碼:    <input type="password" name="password" /><br /><br />    <input type='submit' value="登陸" /></form>


    本文出自 “開心菠菜” 博客

    PHP編程

    鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

  • 發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 欧美18—19sex性hd按摩 | 免费一区二区三区 | 最新欧美精品一区二区三区 | 欧美性生活xxxxx | av手机在线电影 | 性生活视频一级 | 激情亚洲一区二区 | 欧美在线观看视频网站 | 在线观看一区二区三区四区 | 黄片毛片一级 | 久久精品视频亚洲 | 欧美在线观看视频一区二区 | 国产精品久久久久国产精品三级 | 一区二区三区无码高清视频 | 99re色| 一级空姐毛片 | av黄色片网站 | 免费视频观看 | 国产成人av免费看 | 色视频在线 | 成人毛片在线免费看 | 国内精品伊人久久 | 超久久 | 色网在线视频 | 成人午夜在线播放 | 成人毛片av在线 | www.射| 特级西西444www大精品视频免费看 | 伊人yinren22综合网色 | 色吧久久| 国产第一页精品 | 久久免费视频一区二区三区 | 黄色片快播| 欧美囗交| 成人在线观看地址 | 免费在线观看午夜视频 | 久久精品99北条麻妃 | 成人午夜精品 | 麻豆视频在线免费观看 | 欧美成网 | 国产一级做a爰片在线看 |