傳智播客php培訓(xùn)ppt課件_第1頁
傳智播客php培訓(xùn)ppt課件_第2頁
傳智播客php培訓(xùn)ppt課件_第3頁
傳智播客php培訓(xùn)ppt課件_第4頁
傳智播客php培訓(xùn)ppt課件_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、北京傳智播客教育 itcastphp進(jìn)階講師:韓順平主講 韓順平php進(jìn)階-內(nèi)容引見(一) 會話技術(shù)1.1 cookie1.2 session(二) 用戶登錄系統(tǒng)功能改良主講 韓順平php進(jìn)階-會話什么是會話? 會話可簡單了解為:用戶開一個閱讀器,點(diǎn)擊多個超鏈接,訪問效力器多個web資源,然后封鎖閱讀器,整個過程稱之為一個會話。會話過程中要處理的一些問題? 每個用戶在運(yùn)用閱讀器與效力器進(jìn)展會話的過程中,不可防止各自會產(chǎn)生一些數(shù)據(jù),效力器要想方法為每個用戶保管這些數(shù)據(jù)。 例如:多個用戶點(diǎn)擊超鏈接經(jīng)過一個servlet各自購買了一個商品,效力器應(yīng)該想方

2、法把每一個用戶購買的商品保管在各自的地方,以便于這些用戶點(diǎn)結(jié)帳servlet時,結(jié)帳servlet可以得到用戶各自購買的商品為用戶結(jié)帳。 提問:這些數(shù)據(jù)保管在request行不行?主講 韓順平php進(jìn)階-保管會話數(shù)據(jù)的兩種技術(shù) Session Cookie主講 韓順平php進(jìn)階- 保管會話數(shù)據(jù)技術(shù)cookie思索一個問題拋磚引玉大家在訪問某個網(wǎng)站的時候,能否能看到提示他上次登錄網(wǎng)站的時間,而且要留意的是不同用戶上次登錄的時間一定是不一樣的,這是怎樣實(shí)現(xiàn)的?主講 韓順平php進(jìn)階-cookie思索一個問題拋磚引玉大家在訪問某個購物網(wǎng)站的時候,能否能看到提示他曾經(jīng)閱讀過的商品,同樣也是不同用戶閱讀

3、過的商品一定不一樣,這是怎樣實(shí)現(xiàn)的?還有我們在登錄某個網(wǎng)站的時候,往往都可以選擇保管登錄信息多久,不用重復(fù)輸入登錄信息,這個又是怎樣實(shí)現(xiàn)的?主講 韓順平php進(jìn)階-cookie 處理之道cookie技術(shù) Cookie(小甜餅)是客戶端技術(shù),效力器把每個用戶的數(shù)據(jù)以cookie的方式寫給用戶各自的閱讀器。當(dāng)用戶運(yùn)用閱讀器再去訪問效力器中的web資源時,就會帶著各自的數(shù)據(jù)去。這樣,web資源處置的就是用戶各自的數(shù)據(jù)了。主講 韓順平php進(jìn)階-cookie效力器ABC什么是 cookie 效力器在客戶端保管用戶的信息,比如登錄名,密碼等.就是cookie,這些信息就像是小甜餅一樣,數(shù)據(jù)量并不大,效力

4、器端在需求的時候可以從客戶端讀取,保管在客戶端的閱讀器緩存目錄下,可以經(jīng)過右邊的圖來了解主講 韓順平php進(jìn)階-cookiecookie可以用來做什么? 1:保管上次登錄時間等信息 2:保管用戶名、密碼,在一定時間不用重新登錄3: 記錄用戶訪問網(wǎng)站的喜好(比如有無背景音樂、網(wǎng)頁的背風(fēng)光是什么4: 網(wǎng)站的個性化,比如定制網(wǎng)站的效力,內(nèi)容。主講 韓順平php進(jìn)階-cookie名字String值Stringcookie cookie根本運(yùn)用 1: Cookie 有點(diǎn)像一張表,分兩列,一個是名字,一個是值,數(shù)據(jù)類型都是String2: 如何創(chuàng)建一個Cookie(在效力端創(chuàng)建的) bool setcoo

5、kie ( string name , string value , int expire , string path , string domain , bool secure ) 3: 如何讀取cookie(從客戶端讀到效力器)$_COOKIEcookie的名字; 4: 如何刪除一個cookie值要刪除 cookie 需求確保它的失效期是在過去,才干觸發(fā)閱讀器的刪除機(jī)制。 案例演示 cookie1.php cookie2.php cookie4.php主講 韓順平php進(jìn)階-cookie apisetcookie 函數(shù)參數(shù)一覽表主講 韓順平php進(jìn)階-cookie 再了解閱讀器效力器php

6、1php2Set-Cookie: name=順平Set-Cookie: name=順平name=順平IE緩存區(qū)cookie: name=順平cookie: name=順平主講 韓順平php進(jìn)階-cookie 運(yùn)用 顯示用戶上次訪問時間cookie3.php主講 韓順平php進(jìn)階-cookie 運(yùn)用我們在雇員管理系統(tǒng)中添加功能: (1) 登錄manageEmp.php頁面時候,顯示該用戶登錄的上一次時間 (2) 翻開登錄頁面的時候,自動填寫該用戶的用戶名和密碼【這個要求學(xué)員課堂練習(xí)】主講 韓順平php進(jìn)階-cookie 運(yùn)用 顯示用戶上次閱讀過的商品cookie5.php主講 韓順平php進(jìn)階-

7、cookie 細(xì)節(jié) 一個Cookie只能標(biāo)識一種字符串信息,它至少含有一個標(biāo)識該信息的稱號NAME和設(shè)置值VALUE。 一個WEB站點(diǎn)可以給一個WEB閱讀器發(fā)送多個Cookie,一個WEB閱讀器也可以存儲多個WEB站點(diǎn)提供的Cookie。 假設(shè)創(chuàng)建了一個cookie,并將他發(fā)送到閱讀器,默許情況下它是一個會話級別的cookie即存儲在閱讀器的內(nèi)存中,用戶退出閱讀器之后即被刪除。假設(shè)希望閱讀器將該cookie存儲在磁盤上,那么需求運(yùn)用expire,并給出一個以秒為單位的時間。要刪除 cookie 需求確保它的失效期是在過去,才干觸發(fā)閱讀器的刪除機(jī)制。cookie6.php主講 韓順平php進(jìn)階-

8、 保管會話數(shù)據(jù)技術(shù) session 思索兩個問題拋磚引玉大家都在網(wǎng)上購買過商品吧,比如淘寶網(wǎng)。張三和李四他們購買的商品不一樣,他們的購物車中的顯示的商品也不一樣,這是怎樣實(shí)現(xiàn)的?另外一個問題,不同的用戶登錄網(wǎng)站后,不論該用戶閱讀該網(wǎng)站的哪個頁面,都可顯示登錄人的名字,同樣可以隨時去查看本人的購物車中的商品。主講 韓順平php進(jìn)階- 保管會話數(shù)據(jù)技術(shù) session 處理之道session技術(shù) Session是效力器端技術(shù),利用這個技術(shù),效力器在運(yùn)轉(zhuǎn)時可以為每一個用戶的閱讀器創(chuàng)建一個其獨(dú)享的session對象,由于session為用戶閱讀器獨(dú)享,所以用戶在訪問效力器的web資源時,可以把各自的數(shù)

9、據(jù)放在各自的session中,當(dāng)用戶再去訪問效力器中的其它web資源時,其它web資源再從用戶各自的session中取出數(shù)據(jù)為用戶效力。主講 韓順平php進(jìn)階- 保管會話數(shù)據(jù)技術(shù) session 效力器ABCACBA:效力器分配給A客戶端的session對象B:效力器分配給B客戶端的session對象C:效力器分配給C客戶端的session對象當(dāng)用戶翻開閱讀器,訪問某個網(wǎng)站時操作session時,效力器就會在效力器的內(nèi)存為該閱讀器分配一個session,該session被這個閱讀器獨(dú)占。這個session也可看做是一個數(shù)組,session數(shù)據(jù)默許存在時間為1440s(即24min),從php.

10、ini 的session節(jié)可以配置主講 韓順平php進(jìn)階- 保管會話數(shù)據(jù)技術(shù) session Session可以用來做什么1:網(wǎng)上商城中的購物車2:保管登錄用戶的信息3:將某些數(shù)據(jù)放入到Session中,供同一用戶的各個頁面運(yùn)用4 :防止用戶非法登錄到某個頁面.主講 韓順平php進(jìn)階- 保管會話數(shù)據(jù)技術(shù) session 如何了解Sessionsession數(shù)據(jù)名字String值Objectsession不是特別好了解,他可以把session 看作是一容器類似數(shù)組,有兩列。每一行就是session的一個數(shù)據(jù)。每個數(shù)據(jù)包含有兩個部分,一個是該數(shù)據(jù)的名字(String),另外一個是它的值(Objec

11、t)。主講 韓順平php進(jìn)階- 保管會話數(shù)據(jù)技術(shù) session Session根本運(yùn)用key值String數(shù)據(jù)值session數(shù)據(jù)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ù).session_destory();session1.php session2.php session3.php主講 韓順平php進(jìn)階- 保管

12、會話數(shù)據(jù)技術(shù) session 在WEB開發(fā)中,效力器可以為每個用戶閱讀器創(chuàng)建一個超全局變量$_SESSION ,留意:一個閱讀器獨(dú)占一個$_SESSION(默許情況下)。因此,在需求保管用戶數(shù)據(jù)時,效力器程序可以把用戶數(shù)據(jù)寫到用戶閱讀器獨(dú)占的$_SESSION中,當(dāng)用戶運(yùn)用閱讀器訪問其它php頁面時,其它php頁面可以從用戶的$_SESSION中取出該用戶的數(shù)據(jù),為用戶效力。Session和Cookie的主要區(qū)別在于:Cookie是把用戶的數(shù)據(jù)寫給用戶的閱讀器。Session技術(shù)把用戶的數(shù)據(jù)寫到用戶獨(dú)占的$_SESSION中,存在效力器的某個途徑的文件中。$在運(yùn)用$_SESSION 前要保證s

13、ession被初始化,詳細(xì)的方法有: 先調(diào)用session_start(); 配置php.ini session.auto_start =1 (不引薦,會影響效率)主講 韓順平php進(jìn)階- session 原理深化了解 疑問:效力器是如何實(shí)現(xiàn)一個session為一個用戶閱讀器效力的?閱讀器閱讀器php1start_session();php2start_session();SessionId=11SessionId=22Cookie: PHPSESSID=11cookie:phpsessid=11cookie:phpsessid=22cookie:phpsessid=22問題:如何實(shí)現(xiàn)多個IE

14、閱讀器共享同一session?(運(yùn)用:關(guān)掉IE后,再開IE).實(shí)驗(yàn)主講 韓順平php進(jìn)階- session的實(shí)踐案例購物車實(shí)踐案例給出界面,然后實(shí)現(xiàn)為后面講解禁用cookie后還能運(yùn)用session的知識點(diǎn).主講 韓順平php進(jìn)階- session 原理深化了解 實(shí)驗(yàn)演示禁用Cookie后php共享數(shù)據(jù)導(dǎo)致的問題。 處理方案:URL重寫response. encodeRedirectURL(java.lang.Stringurl) 用于對sendRedirect方法后的url地址進(jìn)展重寫。response. encodeURL(java.lang.Stringurl)用于對表單action和超

15、鏈接的url地址進(jìn)展重寫 附加:Session的失效, 運(yùn)用session_destory()php.ini文件配置session失效時間 IE禁用Cookie后的session處置方案 主講 韓順平php進(jìn)階- session 的實(shí)踐運(yùn)用 防止用戶非法登錄到某個頁面要求用戶必需登錄后,才干操作管理頁面.主講 韓順平php進(jìn)階- session 的實(shí)踐運(yùn)用 用戶登錄時驗(yàn)證輸入的驗(yàn)證碼能否正確(1)一次性驗(yàn)證碼的主要目的就是為了限制人們利用工具軟件來暴力猜測密碼。 (2)效力器程序接納到表單數(shù)據(jù)后,首先判別用戶能否填寫了正確的驗(yàn)證碼,只需該驗(yàn)證碼與效力器端保管的驗(yàn)證碼匹配時,效力器程序才開場正常

16、的表單處置流程。主講 韓順平php進(jìn)階- session 的實(shí)踐運(yùn)用 請?jiān)谖覀兊墓蛦T管理系統(tǒng)添加驗(yàn)證碼功能主講 韓順平php進(jìn)階- php.ini 關(guān)于cookie和session配置闡明 php.ini 中關(guān)于cookie和session配置闡明(重點(diǎn),難點(diǎn)) = 名字 闡明:Name of the session (used as cookie name)session.use_trans_sid = 0 闡明:給每個url啟用 session名=sessionId ,對平安有影響,不引薦開啟session.save_path =“c:/mysession闡明: s

17、ession保管途徑【下面三個是一組,用于控制session文件存在時間】session.gc_maxlifetime = 1440 闡明:session默許最大生命周期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配置闡明(重點(diǎn),難點(diǎn))session.use_cookies =1 闡明:能否運(yùn)用cookiesession.cookie_path = /闡明: The pa

18、th for which the cookie is valid. 刪除時要對應(yīng).session.domain_name = 闡明: 根據(jù)規(guī)范產(chǎn)生域名,自動生成,無需設(shè)置.session.cookie_lifetime= 0 闡明: cookie保管時間.默許0,封鎖閱讀器就失效.主講 韓順平php進(jìn)階- php.ini 關(guān)于cookie和session配置闡明 php.ini 中關(guān)于cookie和session配置闡明(重點(diǎn),難點(diǎn))* 自定義會話處置器session.save_handler = files user|memcache闡明: session 運(yùn)用何種方式存取.Handler used to store/retrieve data 這個我們在工程中再說需求: 為什么session文件打頭是sess_* ,我們能不能本人定義session文件名? 我們能不能把session信息高效的保管到memca

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論