會話控制(session和cookie)、跨頁面傳值


1.session  登錄上一個頁面以后,長時間沒有操作,刷新頁面以后需要重新登錄。

特點:(1)session是存儲在服務器;

     (2)session每個人(登陸者)存一份;

   (3)session有默認的過期時間;(如果登錄的人過多,數據就會太多,由於存儲在服務器,會給服務器造成壓力,過一定的時間會清除掉)

   (4)session里面可以存儲任意類型的數據。

    由以上特點可以總結出session的特點是比較安全。缺點是對服務器造成一定的壓力。

   (5)當一個頁面需要使用session時,需要在頁面頂部加session_start();要在頁面最上面寫,前面不能出現任何代碼,代碼指的是PHP代碼,可以有HTML代碼。最好是養成習慣,把<?php session_start(); ?>寫在頁面的最頂部。一個頁面寫一次就可以。

   (6)操作session。a.賦值。b.取值。

 

賦值:

<?php
session_start();//session開始標簽,在最頂部寫。
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
</head>
<body>
<?php
    $_SESSION["uid"] = "zhangsan";//給$_SESSION["uid"]賦值。
?>
</body>
</html>

 

取值:

取值可以在任意頁面取值,比如說做登錄頁面時,可以把登錄名、密碼名等信息賦值給 $_SESSION["uid"],在同一個瀏覽器上的其它頁面也可以取到登錄名、密碼名等的值,前提是賦值的頁面要先打開過,如果直接打開其它頁面取值,將無法取到。再就是關閉瀏覽器以后再打開,也要先打開賦值頁面,其它頁面才能取到值。

<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
</head>

<body>
<?php
echo $_SESSION["uid"]
?>
</body>
</html>

 

 

2.cookie

特點:(1)cookie存儲在客戶端,瀏覽器在清除瀏覽信息時會有cookie清除選項。

   (2)cookie每人存一份。

   (3)cookie沒有默認過期時間。

   (4)只能存儲字符串。

    由以上特點可以總結出cookie的特點是不安全,不會對服務器造成壓力。 

沒有特殊要求的話session和cookie都可以使用,但是當涉及到安全性較高時,要選擇session。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM