Cookie和Session簡介與區別

2022-06-16 23:45:13 字數 2249 閱讀 3992

1、cookie和session簡介與區別

在非常多時候,我們需要跟蹤瀏覽者在整個**的活動,對他們身份進行自動或半自動的識別(也就是平時常說的**登陸之類的功能),這時候,我們常採用cookie與 session來跟蹤和判斷。

區別session資訊是存放在server端,但session id是存放在client cookie的,當然php的session存放方法是多樣化的,這樣就算禁用cookie一樣可以跟蹤

cookie是完全保持在客戶端的如:ie firefox 當客戶端禁止cookie時將不能再使用

2、cookie的配置與應用

setcookie(string name, string value, int expire,string path, string domain, int secure);
其中name是cookie變數名稱標識,你在php中將能象使用普通變數名相同來用他引用cookie變數。value是cookie變數的初始值,expire 表示該cookie變數的有效時間;path 為該cookie變數的相關路徑;domain 表示cookie變數的**;secure 則需在 https 的安全傳輸時才有效。

setcookie("cookie", "cookievalue",time()+3600, "/forum", ".php100.com", 1);
接收和處理cookie

php對cookie的接收和處理的支援非常好,是完全自動的,跟form變數的原則一樣,特別簡單。

比如設定乙個名為 mycookier的cookie,php會自動從web伺服器接收的http頭里把它分析出來,並形成乙個與普通變數一樣的變數,名為$ mycookie,這個變數的值就是cookie的值。陣列同樣適用。另外乙個辦法是引用php的全域性變數$http_cookie_vars陣列。

分別舉例如下:(假設這些都在以前的頁面裡設定過了,並且仍然有效)

刪除cookie

要刪除乙個已經存在的cookie,有兩個辦法:

1、setcookie("cookie", "");

2、setcookie("cookie", "value" , time()-1 / time() );

使用cookie的限制

1、必須在html檔案的內容輸出之前設定;

2、不同的瀏覽器對cookie的處理不一致,且有時會出現錯誤的結果。

3、限制是在客戶端的。乙個瀏覽器能建立的cookie數量最多為30個,並且每個不能超過4kb,每個web站點能設定的cookie總數不能超過20個。

3、session的配置與應用

session_start();                    //初始化session.需在檔案頭部

$_session[name]=value; //配置seeeion

echo $_session[name]; //使用session

isset($_session[name]); // 判斷

unset($_session[name]); //刪除

session_destroy(); //消耗所有session

注意:session_register(),session_unregister,session_is_registered在php5下不再使用

//cookies用法例項

if($_get['out'])

if($_post['name']&&$_post['password']) //如果變數使用者名稱和密碼存在時,在下面設定cookies

if($_cookie['id']&&$_cookie['pass'])

?>

//session用法例項

<?php 

//session用法例項

session_start();//啟動session,必須放在第一句,否則會出錯。

if($_get['out'])

if($_post['name']&&$_post['password'])

if($_session['id']&&$_session['pass'])

?>

cookie和session和token是什麼?

什麼是session?什麼是cookie?什麼是token?1 cookie?由於http是一種無狀態協議,伺服器沒有辦法單單從網路連線上面知道訪問者的身份,為了解決這個問題,就誕生了cookie cookie實際上是一小段的4k文字資訊。客戶端請求伺服器,如果伺服器需要記錄該使用者狀態,就使用re...

Session和Cookie的區別

session和cookie的區別 1 儲存的位置不同 session儲存在伺服器端的記憶體中,占用伺服器資源。cookie是儲存在客戶端。可以是瀏覽器中或者是檔案中 2 儲存的時間不同 session是關閉當前會話相關瀏覽器後自動清空。cookie是根據過期時間而會有不同。3 安全性不同 sess...

cookie和session的區別

一 cookie機制和session機制的區別 具體來說cookie機制採用的是在客戶端保持狀態的方案,而session機制採用的是在伺服器端保持狀態的方案。同時我們也看到,由於在伺服器端保持狀態的方案在客戶端也需要儲存乙個標識,所以session機制可能需要借助於cookie機制來達到儲存標識的目...