close
cookie是什麼?
Cookies是一種讓人能更方便瀏覽網站內容的工具。
Cookie是網站伺服器(web server)儲存在使用者瀏覽器中的一部分資訊。
當您瀏覽網站時,一些cookie將被設定於瀏覽器內,使瀏覽器記下一些特定的資訊,以便網站伺服器在未來能夠更加方便被使用。
當您關閉瀏覽器時,cookie有些會立即隨之消失,有些就被儲存於電腦記憶體中的cookie檔內。
不過所有的cookie都有時效限制,時間到了就自動清除。
Cookie是設定於特定電腦內的瀏覽器內,所以當您使用其他電腦連結相同網站伺服器時,cookie將會重新被紀錄。

參考資料
Cookie函數

setcookie --- 送出cookie

setcookie( )定義一個cookie和標頭一起送出。
cookie必須在任何其它的標頭送出之前送出,這是cookie的限制,而不是PHP。
你必須在任何或是標籤之前呼叫此函式。

今天的demo有說 在setcookie之前不能有任何輸出
例如不可以在setcookie( )之前使用echo 輸出變數或將setcookie ( )嵌入在網頁中,其他html語法先輸出,否則會出現錯誤訊息。



語法:
setcookie ( string name [, string value [, int expire [, string path [, string domain [, int secure]]]]])
中文解釋:setcookie("Cookie變數名稱","Cookie數值","期限","路徑","網域","安全")
除了Cookie的「變數名稱」參數一定要有之外,其餘可省略


說明:
Cookie名稱:Cookie的名稱,以PHP來說,就是變數的名稱,例如 cookiename 就好比 $_COOKIE['cookiename']

Cookie值(Value): 就是Cookie名稱的值

留存時間(Expire) : Cookie的留存時間,以「秒」為單位,例如要留存30天,那就要用「time( )+30*24*60*60」
(time( )函數表示取得現在的時間+30天*24小時*60分*60秒) ;如果沒有設定,當瀏覽器關掉時,cookie也跟著結束。

路徑(path):指在哪些目錄下的檔案可以使用Cookie

網域名稱(Domain):用來設定哪些網域可以使用Cookie

安全性(Secure): 如果結合HTTPS安全傳輸協定(SSL),就是「1」,一般則為「0」。

如果沒有設定留存時間,雖然有指定cookie名稱及數值,但因為一設定就過期,結果是無法讀取寫入的 Cookie。

EX

//建立cookie 並送出
//內有3個變數a=123
//b=456
//c=789

setcookie ("a", "123", time()+1800);
setcookie ("b", "456", time()+1800);
setcookie ("c", "789", time()+1800);

?>

取出cookie內容
a ->123
b ->456
c ->789

取出cookie內容方法下面有3種
echo "
a ->".$a;
echo "
b ->".$_COOKIE["b"];
echo "
c ->".$HTTP_COOKIE_VARS["c"];
?>









arrow
arrow
    全站熱搜

    a22710518 發表在 痞客邦 留言(1) 人氣()