php之session會話控制_PHP教程

來源:互聯網
上載者:User

php之session會話控制


當瀏覽器將 cookie 資料關閉之後,網站使用cookie傳遞將不能進行,而url參數傳遞還是能夠進行(session),其實編寫php的session會話控制整體和cookie會話控制一樣

首先建立編寫要用到的php檔案

這一步是和 cookie 一樣,其實session也可以通過cookie進行傳遞,在 cookie的基礎上在開的頭開啟session:session_start()

下面要注意的是,login.php 的跳轉頁面不能使用header 而只能通過 javascript 進行跳轉

//跳轉介面echo '';

然後將 $_COOKIE[ ] 改為 $_SESSION[ ] 即可

session 通過 cookie傳遞就是這樣,下面主要是講解一下 url參數傳遞

第一種:通過sid的方式進行參數傳遞,即在連結或表單後加上 “?sid=”

這種方法也可以使用設定檔中的PHPSESSID來替換sid,也能達到一樣的效果

login.php

login.php 的php部分也稍作修改

;  //跳轉頁面不能不是header    if(isset($_POST[sub])){    include conn.inc.php;    $sql=select id from users where name='{$_POST[name]}' and password='.md5($_POST[password]).';    $result=$mysqli->query($sql);    //儲存資料    if($result->num_rows > 0){    $row=$result->fetch_assoc();        $_SESSION[username]=$_POST[name];    $_SESSION[uid]=$_POST[uid];    $_SESSION[isLogin5]=1;    //跳轉介面    echo '';    }    echo 使用者名稱密碼有誤;    }?>
其它頁面只要在連結後面加上 “?sid=” 即可

登出程式不像cookie那樣,分四步:開啟、清空、刪除和徹底銷毀

    //開啟session    session_start();    //情況session值    $_SESSION=array();    //刪除用戶端的在cookie中的sessionid    if(isset($_COOKIE[session_name()])){        setCookie(session_name(),'',time()-3600,'/'); //一定要寫上第四個參數(路徑)    }    //徹底銷毀session    session_destroy();

第二種,不需要設定根據瀏覽器是否開啟cookie資料功能而自動選擇用cookie還是session進行傳遞

a、 連結或表單後面都加上 ”?“, 這個跟通過sid傳遞相似,不過SID是常數

index.php:

    >第二頁    >第三頁    >退出

login.php:
   //跳轉介面    echo '';

method=post>

使用者登入

使用者名稱
密碼

b、修改php.ini設定檔

代碼基本和cookie傳遞的一樣,就只是開頭需要開啟session:session_start();

作法:將設定檔中 session.use_trans_sid 的值改為 1
作用:在所有連結的地方預設加上 PHPSESSID 的形式

http://www.bkjia.com/PHPjc/970254.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/970254.htmlTechArticlephp之session會話控制 當瀏覽器將 cookie 資料關閉之後,網站使用cookie傳遞將不能進行,而url參數傳遞還是能夠進行(session),其實編寫php的se...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.