![播客韓順平php核心課程17cookie session_第1頁](http://file4.renrendoc.com/view/d433960bc239e0e3f49ae5ffb9970197/d433960bc239e0e3f49ae5ffb99701971.gif)
![播客韓順平php核心課程17cookie session_第2頁](http://file4.renrendoc.com/view/d433960bc239e0e3f49ae5ffb9970197/d433960bc239e0e3f49ae5ffb99701972.gif)
![播客韓順平php核心課程17cookie session_第3頁](http://file4.renrendoc.com/view/d433960bc239e0e3f49ae5ffb9970197/d433960bc239e0e3f49ae5ffb99701973.gif)
![播客韓順平php核心課程17cookie session_第4頁](http://file4.renrendoc.com/view/d433960bc239e0e3f49ae5ffb9970197/d433960bc239e0e3f49ae5ffb99701974.gif)
![播客韓順平php核心課程17cookie session_第5頁](http://file4.renrendoc.com/view/d433960bc239e0e3f49ae5ffb9970197/d433960bc239e0e3f49ae5ffb99701975.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、北京傳智播客教育 php進(jìn)階-cookie/session講師:韓順平 主講 韓順平php進(jìn)階-內(nèi)容介紹(一) 會話技術(shù)1.1 cookie1.2 session(二) 用戶登錄系統(tǒng)功能改進(jìn)主講 韓順平php進(jìn)階-會話什么是會話? 會話可簡單理解為:用戶開一個瀏覽器,點擊多個超鏈接,訪問服務(wù)器多個web資源,然后關(guān)閉瀏覽器,整個過程稱之為一個會話。會話過程中要解決的一些問題? 每個用戶在使用瀏覽器與服務(wù)器進(jìn)行會話的過程中,不可避免各自會產(chǎn)生一些數(shù)據(jù),服務(wù)器要想辦法為每個用戶保存這些數(shù)據(jù)。 例如:多個用戶點擊超鏈接通過一個php各自購買了一個商品,服務(wù)器應(yīng)該想辦法把每一個用戶購買的商品保存在各自
2、的地方,以便于這些用戶點結(jié)帳php時,結(jié)帳php可以得到用戶各自購買的商品為用戶結(jié)帳。 提問:這些數(shù)據(jù)保存在什么地方?主講 韓順平php進(jìn)階-保存會話數(shù)據(jù)的兩種技術(shù) Session Cookie主講 韓順平php進(jìn)階- 保存會話數(shù)據(jù)技術(shù)cookie思考一個問題拋磚引玉大家在訪問某個網(wǎng)站的時候,是否能看到提示你上次登錄網(wǎng)站的時間,而且要注意的是不同用戶上次登錄的時間肯定是不一樣的,這是怎么實現(xiàn)的?主講 韓順平php進(jìn)階-cookie思考一個問題拋磚引玉大家在訪問某個購物網(wǎng)站的時候,是否能看到提示你曾經(jīng)瀏覽過的商品,同樣也是不同用戶瀏覽過的商品肯定不一樣,這是怎么實現(xiàn)的?還有我們在登錄某個網(wǎng)站的時
3、候,往往都可以選擇保存登錄信息多久,不用重復(fù)輸入登錄信息,這個又是怎么實現(xiàn)的?主講 韓順平php進(jìn)階-cookie 解決之道cookie技術(shù) Cookie(小甜餅)是客戶端技術(shù),服務(wù)器把每個用戶的數(shù)據(jù)以cookie的形式寫給用戶各自的瀏覽器。當(dāng)用戶使用瀏覽器再去訪問服務(wù)器中的web資源時,就會帶著各自的數(shù)據(jù)去。這樣,web資源處理的就是用戶各自的數(shù)據(jù)了。主講 韓順平php進(jìn)階-cookie服務(wù)器ABC什么是 cookie 服務(wù)器在客戶端保存用戶的信息,比如登錄名,密碼等.就是cookie,這些信息就像是小甜餅一樣,數(shù)據(jù)量并不大,服務(wù)器端在需要的時候可以從客戶端讀取,保存在客戶端的瀏覽器緩存目錄
4、下,可以通過右邊的圖來理解主講 韓順平php進(jìn)階-cookiecookie可以用來做什么? 1:保存上次登錄時間等信息 2:保存用戶名、密碼,在一定時間不用重新登錄3: 記錄用戶訪問網(wǎng)站的喜好(比如有無背景音樂、網(wǎng)頁的背景色是什么4: 網(wǎng)站的個性化,比如定制網(wǎng)站的服務(wù),內(nèi)容。主講 韓順平php進(jìn)階-cookiecookie基本使用 1: Cookie在客戶機(jī)(瀏覽器)就是一個字符串,其形式如下:name2 shunping localhost/cookie/ 6999*2: 如何創(chuàng)建一個Cookie(在服務(wù)端創(chuàng)建的) bool setcookie ( string name , string
5、value , int expire , string path , string domain , bool secure ) 3: 如何讀取cookie(從客戶端讀到服務(wù)器)$_COOKIEcookie的名字; 4: 如何刪除一個cookie值要刪除 cookie 需要確保它的失效期是在過去,才能觸發(fā)瀏覽器的刪除機(jī)制。 案例演示 cookie1.php cookie2.php cookie4.php主講 韓順平php進(jìn)階-cookie apisetcookie 函數(shù)參數(shù)一覽表主講 韓順平php進(jìn)階-cookie 再理解瀏覽器服務(wù)器php1php2Set-Cookie: name=順平Set
6、-Cookie: name=順平name=順平IE緩存區(qū)cookie: name=順平cookie: name=順平主講 韓順平php進(jìn)階-cookie 應(yīng)用 顯示用戶上次訪問時間cookie3.php主講 韓順平php進(jìn)階-cookie 應(yīng)用我們在雇員管理系統(tǒng)中增加功能: (1) 登錄empManage.php頁面時候,顯示該用戶登錄的上一次時間 (2) 打開登錄頁面的時候,自動填寫該用戶的用戶名和密碼【這個要求學(xué)員課堂練習(xí)】主講 韓順平php進(jìn)階-cookie 應(yīng)用 顯示用戶上次瀏覽過的商品cookie5.php主講 韓順平php進(jìn)階-cookie 細(xì)節(jié) 一個Cookie只能標(biāo)識一種字符串
7、信息,它至少含有一個標(biāo)識該信息的名稱(NAME)和設(shè)置值(VALUE)。 一個WEB站點可以給一個WEB瀏覽器發(fā)送多個Cookie,一個WEB瀏覽器也可以存儲多個WEB站點提供的Cookie。 如果創(chuàng)建了一個cookie,并將他發(fā)送到瀏覽器,默認(rèn)情況下它是一個會話級別的cookie(即存儲在瀏覽器的內(nèi)存中),用戶退出瀏覽器之后即被刪除。若希望瀏覽器將該cookie存儲在磁盤上,則需要使用expire,并給出一個以秒為單位的時間。要刪除 cookie 需要確保它的失效期是在過去,才能觸發(fā)瀏覽器的刪除機(jī)制。cookie6.php主講 韓順平php進(jìn)階- 保存會話數(shù)據(jù)技術(shù) session 思考兩個問
8、題拋磚引玉大家都在網(wǎng)上購買過商品吧,比如淘寶網(wǎng)。張三和李四他們購買的商品不一樣,他們的購物車中的顯示的商品也不一樣,這是怎么實現(xiàn)的?另外一個問題,不同的用戶登錄網(wǎng)站后,不管該用戶瀏覽該網(wǎng)站的哪個頁面,都可顯示登錄人的名字,同樣可以隨時去查看自己的購物車中的商品。請大家嘗試去直接訪問我們的empManage.php頁面,你們會發(fā)現(xiàn)什么情況?主講 韓順平php進(jìn)階- 保存會話數(shù)據(jù)技術(shù) session 解決之道session技術(shù) Session是服務(wù)器端技術(shù),利用這個技術(shù),服務(wù)器在運行時可以為每一個用戶的瀏覽器創(chuàng)建一個其獨享的session文件,由于session為用戶瀏覽器獨享,所以用戶在訪問服務(wù)
9、器的web資源時,可以把各自的數(shù)據(jù)放在各自的session中,當(dāng)用戶再去訪問服務(wù)器中的其它web資源時,其它web資源再從用戶各自的session中取出數(shù)據(jù)為用戶服務(wù)。在默認(rèn)情況下session文件將被保存在c:/windows/temp主講 韓順平php進(jìn)階- 保存會話數(shù)據(jù)技術(shù) session 服務(wù)器ABCACBA:服務(wù)器分配給A客戶端的session文件B:服務(wù)器分配給B客戶端的session文件C:服務(wù)器分配給C客戶端的session文件當(dāng)用戶打開瀏覽器,訪問某個網(wǎng)站時操作session時,服務(wù)器就會在服務(wù)器的磁盤為該瀏覽器分配一個保存session信息的文件,該文件被這個瀏覽器獨自訪問
10、。session文件存放的信息格式如下:name|s:5:hello;password|s:6:123456;session數(shù)據(jù)默認(rèn)存在時間為1440s(即24min),從php.ini 的session節(jié)可以配置主講 韓順平php進(jìn)階- 保存會話數(shù)據(jù)技術(shù) session Session可以用來做什么1:網(wǎng)上商城中的購物車2:保存登錄用戶的信息3:將某些數(shù)據(jù)放入到Session中,供同一用戶的各個頁面使用4 :防止用戶非法登錄到某個頁面.主講 韓順平php進(jìn)階- 保存會話數(shù)據(jù)技術(shù) session 如何理解Sessionsession在存放的時候就是一個string ,有自己的格式,形如:nam
11、e|s:5:hello;password|s:6:123456; dog1|O:3:Dog:3:s:4:name;s:6:大明;s:3:age;i:90;s:5:color;s:6:紅色;主講 韓順平php進(jìn)階- 保存會話數(shù)據(jù)技術(shù) session Session基本使用1:初始化sessionsession_start();2:向session添加數(shù)據(jù)$_SESSIONkey值=$val;3: 從session得到某個數(shù)據(jù)值$val=$_SESSIONkey值;4: 刪除session關(guān)聯(lián)的數(shù)據(jù)/初始化sessionsession_start();/銷毀和當(dāng)前session關(guān)聯(lián)的所有數(shù)據(jù).se
12、ssion_destory();session1.php session2.php session3.phpunset($_SESSIONkey值);主講 韓順平php進(jìn)階- 保存會話數(shù)據(jù)技術(shù) session 在WEB開發(fā)中,服務(wù)器可以為每個用戶瀏覽器創(chuàng)建一個超全局變量$_SESSION ,注意:一個瀏覽器獨占一個$_SESSION(默認(rèn)情況下)。因此,在需要保存用戶數(shù)據(jù)時,服務(wù)器程序可以把用戶數(shù)據(jù)寫到用戶瀏覽器獨占的Session文件中,當(dāng)用戶使用瀏覽器訪問其它php頁面時,其它php頁面可以從用戶的$_SESSION中取出該用戶的數(shù)據(jù),為用戶服務(wù)。Session和Cookie的主要區(qū)別在于
13、:Cookie是把用戶的數(shù)據(jù)寫給用戶的瀏覽器。Session技術(shù)把用戶的數(shù)據(jù)寫到用戶獨占的$_SESSION中,存在服務(wù)器的某個路徑的文件中。$在使用$_SESSION 前要保證session被初始化,具體的方法有: 先調(diào)用session_start(); 配置php.ini session.auto_start =1 (不推薦,會影響效率)主講 韓順平php進(jìn)階- session 原理深入理解 疑問:重要服務(wù)器是如何實現(xiàn)一個session為一個用戶瀏覽器服務(wù)的?瀏覽器瀏覽器php1session_start ();php2session_start ();SessionId=11Sessio
14、nId=22Cookie: PHPSESSID=11cookie:phpsessid=11cookie:phpsessid=22cookie:phpsessid=22主講 韓順平php進(jìn)階- session的實際案例購物車實際案例給出界面,然后實現(xiàn)為后面講解禁用cookie后還能使用session的知識點.實際運用一下,加深對session的理解,然后再說session細(xì)節(jié)問題?主講 韓順平php進(jìn)階- session 原理深入理解 實驗演示禁用Cookie后php共享數(shù)據(jù)導(dǎo)致的問題。 解決方案:URL重寫 附加:Session的失效, 使用session_destory()php.ini文件
15、配置session失效時間 IE禁用Cookie后的session處理方案 主講 韓順平php進(jìn)階- session 的實際應(yīng)用 防止用戶非法登錄到某個頁面要求用戶必須登錄后,才能操作管理頁面.主講 韓順平php進(jìn)階- session 的實際應(yīng)用 用戶登錄時驗證輸入的驗證碼是否正確(1)一次性驗證碼的主要目的就是為了限制人們利用工具軟件來暴力猜測密碼。 (2)服務(wù)器程序接收到表單數(shù)據(jù)后,首先判斷用戶是否填寫了正確的驗證碼,只有該驗證碼與服務(wù)器端保存的驗證碼匹配時,服務(wù)器程序才開始正常的表單處理流程。主講 韓順平php進(jìn)階- session 的實際應(yīng)用 請在我們的雇員管理系統(tǒng)添加驗證碼功能主講
16、韓順平php進(jìn)階- php.ini 關(guān)于cookie和session配置說明 php.ini 中關(guān)于cookie和session配置說明(重點,難點) = 名字 說明:Name of the session (used as cookie name)session.use_trans_sid = 0 說明:給每個url啟用 session名=sessionId ,對安全有影響,不推薦開啟session.save_path =“c:/mysession”說明: session保存路徑【下面三個是一組,用于控制session文件存在時間】session.gc_maxlife
17、time = 1440 說明:session默認(rèn)最大生命周期session.gc_probability = 1 session.gc_divisor = 1000這兩個值根據(jù)網(wǎng)站規(guī)模大小合理設(shè)置主講 韓順平php進(jìn)階- php.ini 關(guān)于cookie和session配置說明 php.ini 中關(guān)于cookie和session配置說明(重點,難點)session.use_cookies =1 說明:是否使用cookiesession.cookie_path = /說明: The path for which the cookie is valid. 刪除時要對應(yīng).session.domain
18、_name = 說明: 根據(jù)規(guī)范產(chǎn)生域名,自動生成,無需設(shè)置.session.cookie_lifetime= 0 說明: cookie保存時間.默認(rèn)0,關(guān)閉瀏覽器就失效.主講 韓順平php進(jìn)階- php.ini 關(guān)于cookie和session配置說明 php.ini 中關(guān)于cookie和session配置說明(重點,難點)* 自定義會話處理器session.save_handler = files user|memcache說明: session 使用何種方式存取.Handler used to store/retrieve data 這個我們在項目中再說需求: 為什么session文件打頭是sess_* ,我們能不能自己定義session文件名? 我們能不能把session信息高效的保存到memcache中。,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度數(shù)字經(jīng)濟(jì)產(chǎn)業(yè)納稅擔(dān)保協(xié)議
- 2025年度生物制藥研發(fā)合同補充協(xié)議
- 二零二五年度跨國公司分支機(jī)構(gòu)設(shè)立合同標(biāo)準(zhǔn)
- 2025年度美容儀器產(chǎn)品認(rèn)證及檢測服務(wù)合同
- 2025年度國際貿(mào)易慣例操作手冊合同范本-@-1
- 2025年度貨架子采購合同范本包含節(jié)能環(huán)保標(biāo)準(zhǔn)
- 2025年度港口航道清淤工程施工合同(生態(tài)保護(hù))
- 2025年度工地技術(shù)員施工圖紙審核合同
- 2025年度農(nóng)業(yè)可持續(xù)發(fā)展化肥農(nóng)藥種子供應(yīng)協(xié)議
- 2025年工業(yè)園區(qū)國際商務(wù)園區(qū)物業(yè)服務(wù)合同
- SolidWorks培訓(xùn)課件完整版
- 各期前列腺癌治療的指南推薦
- 壓力管理與情緒應(yīng)對培訓(xùn)課件
- 提高預(yù)埋螺栓安裝一次驗收合格率五項qc2012地腳
- 六年級譯林版小學(xué)英語閱讀理解訓(xùn)練經(jīng)典題目(附答案)
- GB/T 12332-2008金屬覆蓋層工程用鎳電鍍層
- 建設(shè)工程項目管理(課件)
- CQJTG∕T D09-2021 重慶市高速公路特殊路段交通安全設(shè)施設(shè)計指南
- 東洋(TOYO)VF64C系列變頻器中文說明書
- 狄更斯與《圣誕頌歌》課件
- 康復(fù)科院感工作年度總結(jié)
評論
0/150
提交評論