資源描述:
《登錄注冊模塊開發(fā)-PHP教學(xué)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、PHP+MySQL動態(tài)網(wǎng)頁技術(shù)教程主編:王彥輝7.1項目導(dǎo)引:登錄注冊模塊很多網(wǎng)站都具有登錄注冊的功能電子商務(wù)網(wǎng)站、社區(qū)論壇、博客、微博等網(wǎng)站系統(tǒng)在圖書商城中,需要先登錄才能完成圖書的購買任務(wù)。我們該如何開發(fā)一個商城的登錄注冊模塊呢?7.2項目分析當(dāng)當(dāng)網(wǎng)登錄注冊7.2項目分析登錄注冊流程圖數(shù)據(jù)驗證新用戶注冊填寫用戶信息輸入驗證碼提交注冊注冊成功是否用戶登錄填寫賬戶密碼數(shù)據(jù)驗證是登錄成功否用戶管理7.3技術(shù)準備用戶登錄過程中存在這樣一個問題,用戶在登錄頁面登錄成功后,不管用戶到達網(wǎng)站的哪個頁面用戶始終處于登錄狀態(tài)。用戶從一個頁面跳轉(zhuǎn)到另外一個頁面。由于Http協(xié)議是無狀態(tài)協(xié)議,所以它不
2、能夠跟蹤用戶;PHP變量的作用范圍也局限于同一個PHP文件,它也不能夠跟蹤用戶。PHP服務(wù)器如何跟蹤一個客戶端用戶的呢?這里用到了PHP中SESSION和COOKIE。7.3技術(shù)準備7.3.1Cookie介紹1.Cookie概述Cookie表示由網(wǎng)站服務(wù)器發(fā)送出來存儲在客戶瀏覽器上的小量信息,從而使得訪客下次訪問該網(wǎng)站時,可以從瀏覽器讀回這些信息。這種機制可以讓瀏覽器記住訪客的特定信息,如登錄的用戶名,上次訪問的位置,瀏覽的圖書等內(nèi)容。以用戶登錄過程為例來看,當(dāng)用戶通過客戶端瀏覽器訪問Web服務(wù)器的登錄頁面,輸入賬號和密碼進行登錄,此時賬戶信息就保存在客戶端的Cookie中。當(dāng)用戶再
3、次訪問同一服務(wù)器的其它頁面時,就會自動攜帶Cookie中的數(shù)據(jù)一起訪問,而不需要每個頁面都重新登錄。7.3技術(shù)準備7.3.1Cookie介紹1.Cookie概述我們把Web服務(wù)器比作一家商場,商城中的每個店面就是一個頁面,而Cookie好比是你第一次去商場時商場發(fā)的會員卡,當(dāng)你在商城任意一家店面購物時,只要出示會員卡便可以享受優(yōu)惠。在會員卡的有效期內(nèi),任何時間來到商場都被看成是商場會員。2.cookie的管理(1)設(shè)置cookie設(shè)置cookie的函數(shù)是setcookie(),語法格式如下:boolsetcookie(stringname[,stringvalue[,intexpir
4、e[,stringpath[,stringdomain[,boolsecure]]]]])7.3技術(shù)準備7.3.1Cookie介紹2.cookie的管理(2)接收和處理cookie預(yù)定義全局數(shù)組$_COOKIE(3)刪除cookie把cookie的值設(shè)為空或有效期設(shè)為小于當(dāng)前時間的值,即刪除了cookie例7-17.3技術(shù)準備7.3.2Session介紹1.Session概述Session技術(shù)與Cookie類似,都可以用來存儲訪問者的信息,但最大不同在于Cookie是將信息存放在客戶端,而Session是將數(shù)據(jù)存放于服務(wù)器中。Session在英語中是會議、會期的意思,用于網(wǎng)絡(luò)領(lǐng)域,可
5、以稱之為客戶端與服務(wù)器的會話期,從客戶端輸入網(wǎng)站的網(wǎng)址開始訪問到關(guān)閉瀏覽器結(jié)束訪問,經(jīng)過的這段時間就可以稱之為一個Session,它是一個特定的時間概念。7.3技術(shù)準備7.3.2Session介紹1.Session概述上一節(jié)中我們把Cookie比喻成第一次去商場時為你提供的會員卡,并由用戶自己保存,如果用戶的會員卡丟失了就不能以會員身份購物了。如果我們在辦理會員卡時,把會員卡保存在商場,而我們只保存卡號,下次購物時只提供卡號就可以。Session就是這樣的,在服務(wù)器端保存Session變量的名和值,同時在客戶端保存由服務(wù)器創(chuàng)建的一個Session標示符(SessionID)。當(dāng)用戶再
6、次訪問服務(wù)器時,就會把SessionID發(fā)送給服務(wù)器,根據(jù)SessionID就可以提取保存在服務(wù)器端的Session變量的值。7.3技術(shù)準備7.3.2Session介紹2.Session的管理(1)啟動會話session_start()函數(shù)(2)使用會話變量存儲信息全局數(shù)組變量$_SESSION(3)注銷會話變量Session_destory()函數(shù)unset()函數(shù)例7-2、例7-37.3技術(shù)準備7.3.3相關(guān)函數(shù)1.隨機數(shù)函數(shù)rand()在程序中常常需要產(chǎn)生一個隨機數(shù),產(chǎn)生隨機數(shù)通常使用rand()函數(shù),函數(shù)語法格式如下:intrand([intmin,intmax])例7-42
7、.md5加密算法md5加密算法針對一個隨機長度的信息來產(chǎn)生一個128位的加密信息,函數(shù)語法格式如下:stringmd5(stringstr)例7-57.3技術(shù)準備7.3.3相關(guān)函數(shù)3.創(chuàng)建圖像函數(shù)使用imagecreate()函數(shù)可以創(chuàng)建一個空白圖像,函數(shù)語法格式如下:resourceimagecreate(intx_size,inty_size)4.分配顏色函數(shù)imagecreate()函數(shù)創(chuàng)建的圖像是一個空白圖像,需要使用imagecoloralloc