目錄
基本上使用
基本原理
進階使用
常用的動作:
伺服器為每一個新瀏覽器存取(沒有確定標識的瀏覽器),確定標識,並在伺服器上產生一個唯一的資料空間!
首頁 後端開發 php教程 cookie和session的詳細介紹(圖文)

cookie和session的詳細介紹(圖文)

Feb 15, 2019 pm 01:25 PM
cookie session

這篇文章帶給大家的內容是關於cookie和session的詳細介紹(圖文),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

cookie技術

cookie是瀏覽器端的技術,可以在瀏覽器上保存資料的技術! cookie就是指的是瀏覽器上儲存的資料!

PHP支援cookie技術! php可以向瀏覽器發出指令,從而將資料保存到瀏覽器上!

瀏覽器負責保存數據,而php負責控制瀏覽器保存那些數據! (php在是使用瀏覽器上cookie技術)

保存在瀏覽器上的cookie數據,可以在瀏覽器每次向伺服器請求時,都可以攜帶該數據,向伺服器發出請求,此時伺服器上的腳本就可以獲得該數據!

基本上使用

設定cookie 變量,增,改,刪除

利用內部函數 setcookie 完成

#形式:setcookie(名字,值)

取得cookie 變量,讀取

使用預先定義數組變數:$_COOKIE

#該變數內保存所有從瀏覽器請求時所攜帶的cookie資料!

每個元素就是一個cookie變數資料!下標是名字,值,就是值!

基本原理

利用firebug的網路標籤:

設定時,做了什麼?

在回應時,伺服器發送了一條指令,在瀏覽器上增加一個cookie變數!

瀏覽器接到該指令後,在瀏覽器上增加了一個cookie資料!

取得時,做了什麼?

瀏覽器會將目前網站的所有的cookie在請求時都攜帶到伺服器上!

php會自動取得到瀏覽器攜帶的cookie,形成$_COOKIE數組,使用者腳本使用!

進階使用

1.cookie資料只能是字串資料!

 

2.setcookie函數,可以完成增,修改,刪除!

不存在,則增加,存在則修改!

刪除,可以採用將值,置空的形式!

3.cookie變數的失效期

#cookie資料存在有效期的概念:

默認,臨時cookie。會儲存到瀏覽器關閉!

同時,支持,增加setcookie的第三個參數,來修改cookie變數的有效期限。有效期限的表示方式,是時間戳,表示到哪個時間點,失效!

php可以透過 time()函數,得到目前的時間戳,time()增加增量的形式延長cookie時間!

此時,伺服器會向瀏覽器發出以下指令:

網路上表示時間,都是用格林威治平時!沒有時區概念的那個時間! GMT

瀏覽器知道cookie變數的有效期限!

常用的動作:

 

##1 .cookie存在有效路徑的概念#

cookie變數是只在目前目錄,及其後代目錄才會生效!

test/下設定, test/sub/下可以存取

#反過來:

# # 

那是由於該cookie:

可以更改cookie資料的有效路徑:

透過setcookie的第四個參數做修改:

/ 表示網站根目錄有效!整站有效!

5,cookie子網域的概念

cookie是嚴格區分網域的。

支援在子網域之間是可以共享的:

利用第五個參數設定

#有效期,有效路徑,有效子域名!

6,$_COOKIE是捕獲不了目前腳本所設定的cookie變數的!

$_COOKIE是,瀏覽器請求時所攜帶的所有cookie!

目前設定的下次使用請求才好用!

session技術,會話技術

場景:

cookie的問題

由於是資料本身是在瀏覽器端:

資料的安全性問題!

資料總是要在請求時攜帶!

怎麼解決,注意保持在瀏覽器的多次請求間共享資料!

將資料放在伺服器端,同時是資料區分瀏覽器,在瀏覽器的多次請求間共用資料!

在伺服器上,為來訪的每台瀏覽器增加一個資料空間,然後為這些資料空間分配不同唯一的識別碼!為每個瀏覽器分配一個唯一的標識,該標誌應該伺服器端資料庫空間的標識應該一一對應

要求,瀏覽器每次請求時攜帶標識,此時伺服器可以獲得標識,利用標識確定資料空間,但卻請求的所有的資料處理,都在目前的確定的空間內完成!

將伺服器指派給瀏覽器的唯一識別存在瀏覽器的cookie內,可以保證瀏覽器每次來時都會攜帶!

伺服器為每一個新瀏覽器存取(沒有確定標識的瀏覽器),確定標識,並在伺服器上產生一個唯一的資料空間!

基本上使用

直接操作$_SESSION數組,就可以完成session資料的存,取!

每個session數據,就對應$_SESSION內的一個元素!對元素操作,就是對session資料做操作!

但是,session技術,包含生產session標識,開啟session資料空間,為瀏覽器分配session標識等等,都需要PHP的session機制支援!

因此,需要先開啟session的支持,才能操作$_SESSION變量,從而去操作session資料!

開啟:

session_start();

#操作:

##$_SESSION;

先開啟後操作:

#更新與刪除:

基本原理

瀏覽器端cookie中儲存的sessionID:

目前瀏覽器第一次對伺服器發出請求時,伺服器無法確定瀏覽器的識別

會重新產生一個唯一標識,以cookie的形式儲存到瀏覽器端!

其中預設的cookie變數名稱為:PHPSESSID。

該cookie標量,也稱為sessionID!

#########當瀏覽器擁有了sessionid這個cookie變數後,接下來的請求都會攜帶該ID發出請求:###

伺服器的端的是session資料空間

預設情況下,php,會將保存session資料的空間,產生一個檔案來完成!透過文件的名稱來區分屬於哪個ID的!

預設的被保存在伺服器作業系統的暫存目錄內:

#大概的流程:

##測試:

使用session來完成登陸識別驗證:

######

以上是cookie和session的詳細介紹(圖文)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1666
14
CakePHP 教程
1425
52
Laravel 教程
1324
25
PHP教程
1272
29
C# 教程
1251
24
cookie存在哪裡 cookie存在哪裡 Dec 20, 2023 pm 03:07 PM

Cookie通常儲存在瀏覽器的Cookie資料夾中的,瀏覽器中的Cookie檔案通常以二進位或SQLite格式存儲,如果直接開啟Cookie文件,可能會看到一些亂碼或無法讀取的內容,因此最好使用瀏覽器提供的Cookie管理介面來檢視和管理Cookie。

電腦上的cookie在哪裡 電腦上的cookie在哪裡 Dec 22, 2023 pm 03:46 PM

電腦上的Cookie儲存在瀏覽器的特定位置,具體位置取決於使用的​​瀏覽器和作業系統:1、Google Chrome, 儲存在C:\Users\YourUsername\AppData\Local\Google\Chrome\User Data\Default \Cookies中等等。

session失效怎麼解決 session失效怎麼解決 Oct 18, 2023 pm 05:19 PM

session失效通常是由於 session 的生存時間過期或伺服器關閉導致的。其解決方法:1、延長session的生存時間;2、使用持久化儲存;3、使用cookie;4、非同步更新session;5、使用會話管理中介軟體。

PHP Session 跨域問題的解決方法 PHP Session 跨域問題的解決方法 Oct 12, 2023 pm 03:00 PM

PHPSession跨域問題的解決方法在前後端分離的開發中,跨域請求已成為常態。在處理跨域問題時,我們通常會涉及session的使用和管理。然而,由於瀏覽器的同源策略限制,跨域情況下預設無法共享session。為了解決這個問題,我們需要採用一些技巧和方法來實現session的跨域共享。一、使用cookie跨域共享session最常

手機cookie在哪裡 手機cookie在哪裡 Dec 22, 2023 pm 03:40 PM

手機上的Cookie儲存在行動裝置的瀏覽器應用程式中:1、在iOS裝置上,Cookie儲存在Safari瀏覽器的Settings -> Safari -> Advanced -> Website Data中;2、在Android裝置上,Cookie儲存在Chrome瀏覽器的Settings -> Site settings -> Cookies中等等。

JavaScript和PHP的cookie之間有哪些差異? JavaScript和PHP的cookie之間有哪些差異? Sep 02, 2023 pm 12:29 PM

JavaScriptCookie使用JavaScriptcookie是記住和追蹤偏好、購買、佣金和其他資訊的最有效方法。更好的訪客體驗或網站統計所需的資訊。 PHPCookieCookie是儲存在客戶端電腦上的文字檔案並保留它們用於追蹤目的。 PHP透明地支援HTTPcookie。 JavaScriptcookie如何運作?您的伺服器將一些資料傳送到訪客的瀏覽器cookie的形式。瀏覽器可以接受cookie。如果存在,它將作為純文字記錄儲存在訪客的硬碟上。現在,當訪客到達網站上的另一個頁面時

Cookie工作原理是什麼 Cookie工作原理是什麼 Sep 20, 2023 pm 05:57 PM

Cookie運作方式涉及到伺服器發送Cookie、瀏覽器儲存Cookie以及瀏覽器對Cookie的處理和儲存。詳細介紹:1、伺服器發送Cookie,伺服器會傳送一個包含Cookie的HTTP回應標頭給瀏覽器。這個Cookie包含了一些訊息,例如使用者的身份認證、偏好設定或購物車內容等,瀏覽器接收到這個Cookie後,會將它儲存在使用者的電腦上;2、瀏覽器儲存Cookie等等。

cookie洩漏有什麼危害 cookie洩漏有什麼危害 Sep 20, 2023 pm 05:53 PM

Cookie洩漏的危害有導致個人識別資訊被竊、個人線上行為被追蹤、帳戶被竊等。詳細介紹:1、個人識別資訊被盜竊,例如姓名、電子郵件地址、電話號碼等,這些資訊可能被不法分子用於進行身份盜竊、欺詐等違法行為;2、個人在線行為被追踪,通過分析cookie中的數據,不法分子可以了解用戶的瀏覽歷史、購物偏好、興趣愛好等;3、帳戶被盜,繞過登入驗證,直接存取用戶的帳號等等。

See all articles