Cookie禁用了,Session還能用嗎?session_id 的由來
阿新 • • 發佈:2019-01-28
途徑1舉例說明:
-------------------------------------------------------------------------------------------------------------------
<?php
// s1.php
session_start();
$_SESSION[’var1’]="中華人民共和國";
$url="<a href="http://laiguowei2004.blog.163.com/blog/.""s2.php">下一頁</a>";
echo $url;
?>
-------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------
<?php
// s2.php
session_start();
echo "傳遞的session變數var1的值為:".$_SESSION[’var1’];
?>
-------------------------------------------------------------------------------------------------------------------
執行以上程式碼,在客戶端cookie正常的情況下,應該可以在得到結果"中華人民共和國"。
現在你手動關閉客戶端的cookie,再執行,可能得不到結果了吧。如果得不到結果,再設定php.ini檔案中的”session.use_trans_sid = 1“,或者編譯時開啟打開了”--enable-trans-sid選項”,又得到結果“中華人民共和國”。
途徑2舉例說明:
-------------------------------------------------------------------------------------------------------------------
<?php
// s1.php
session_start();
$_SESSION[’var1’]="中華人民共和國";
$sn = session_id();
$url="<a href="http://laiguowei2004.blog.163.com/blog/.""s2.php?s=".$sn."">下一頁</a>";
echo $url;
?>
-------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------
<?php
session_id($_GET[’s’]);
session_start();
echo "傳遞的session變數var1的值為:".$_SESSION[’var1’];
?>
-------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------
<?php
// s1.php
session_start();
$_SESSION[’var1’]="中華人民共和國";
$url="<a href="http://laiguowei2004.blog.163.com/blog/.""s2.php">下一頁</a>";
echo $url;
?>
-------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------
<?php
// s2.php
session_start();
echo "傳遞的session變數var1的值為:".$_SESSION[’var1’];
?>
-------------------------------------------------------------------------------------------------------------------
執行以上程式碼,在客戶端cookie正常的情況下,應該可以在得到結果"中華人民共和國"。
現在你手動關閉客戶端的cookie,再執行,可能得不到結果了吧。如果得不到結果,再設定php.ini檔案中的”session.use_trans_sid = 1“,或者編譯時開啟打開了”--enable-trans-sid選項”,又得到結果“中華人民共和國”。
途徑2舉例說明:
-------------------------------------------------------------------------------------------------------------------
<?php
// s1.php
session_start();
$_SESSION[’var1’]="中華人民共和國";
$sn = session_id();
$url="<a href="http://laiguowei2004.blog.163.com/blog/.""s2.php?s=".$sn."">下一頁</a>";
echo $url;
?>
-------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------
<?php
session_id($_GET[’s’]);
session_start();
echo "傳遞的session變數var1的值為:".$_SESSION[’var1’];
?>
-------------------------------------------------------------------------------------------------------------------