時間:2014年4月11日20:31:09 cookie的設置讀取與銷燬


Cookie的原理:

服務器設置某個鍵值,如:username= zhangsan

並把此值交給瀏覽器,當瀏覽器再次訪問服務器的時候,

把此值帶過來,並由服務器檢測此值

這種鍵值變量,就是cookie


Cookie的安全性:在瀏覽器端存放,不安全


服務器如何設置cookie

PHP使用setcookie()函數


如何查看cookie

Cookie在瀏覽器裏,每次用戶請求服務器時,

都先把cookie帶過來,

PHPcookie值可以通過超全局變量$_COOKIE來讀取

$_COOKIE是一個數組

如查看cookie中的用戶名,使用$_COOKIE[‘username’]


Cookie參數的設置

如何設置cookie的變量名?

如何設置cookie中的變量值?

Cookie的有效期?

在一個網站設置的cookie在哪裏有效?

setcookie()參數設置:

bool setcookie ( string $name [, string$value [, int $expire = 0 [, string $path [, string $domain [, bool $secure =false [, bool $httponly = false ]]]]]] )


<?php

/*兩個參數,cookie隨着瀏覽器的關閉,就失效*/

setcookie('username','zhangsan');

?>


<?php

/*三個參數,設置cookie

第三個參數,設置cookie的生命週期,以時間戳爲單位

關掉瀏覽器後,cookie還存在*/

setcookie('username','zhangsan',time()+15);


echo "<a  href='03.php'>03.php</a>"

?>



Cookie的作用域:

一個頁面設置的cookie

默認是同級目錄下,及其子目錄下可以讀取

如果想讓整站有效,可以再根目錄下設置setcookie

也可以使用第四個參數,指定cookie有效路徑

<?php

/*四個參數,設置cookie

第四個參數設置cookie的保存路徑*/

setcookie('username','zhangsan',time()+15,'./');


echo "<a  href='03.php'>03.php</a>"

?>


Cookie是不能跨域名的,否則安全問題就太大了

換一個目錄

127.0.0.1

localhost

每個cookie都有主機,路徑名,過期時間

但是可以再一個域名的二級子域名下使用,

需要使用第五個參數:


如何使cookie失效

<?php

/*使cookie失效,設置cookie的有效期*/

setcookie('username','',0);

?>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章