程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 客戶端禁用了cookie,服務端PHP仍舊使用session的方法

客戶端禁用了cookie,服務端PHP仍舊使用session的方法

編輯:PHP綜合

在php服務端當一張頁面調用了session_start()函數之後,這張頁面做了3件事情
1,在服務器端創建了一個sess_###############的文本文件(c:\window\tem\目錄下面)
2,刪除一起失效的sess_##########文本文件(此處就不在講了)
3,把http頭 和 網頁的內容發給用戶,其中http頭中有set-cookie:PHPSESSIONID=123456789755jahasd這麼樣的一串數字,
當沒有禁用cookie的時候,用戶再次訪問此網站的時候,浏覽器會把PHPSESSIONID=123456789755jahasd,禁用的時候PHPSESSIONID=123456789755jahasd浏覽器不會在帶給服務器了

此時我們還要在用PHPSESSIONID=123456789755jahasd這個字符串的時候,我們可以把它放到每個超鏈接後面,作為get請求帶給服務器
例如:

第一張頁面:

<?php
  session_start();
 $id = session_id();  //獲取session_start()生成的session_id
$_SESSION['web'] = '某php博客';
?>
<a href='http://?user=123&PHPSESSIONID=<?php echo $id;?>'>吾愛編程</a>



第二種頁面:
 

<?php
    if($id = $_GET['PHPSESSIONID'])
   {
       session_id($id);     //讓下面的session_start(),如果有這個文件就不要創建,否則就創建
   }
 sesstion_start();
echo  $_SESSION['web'];  同樣可以把session取出來

?>
*
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved