PHP《個(gè)人管理系統(tǒng)》之完善登錄模塊
介紹
個(gè)人管理系統(tǒng)現(xiàn)在問(wèn)題多多,歡迎大家一起來(lái)修復(fù)bug,并添加功能。
今天我來(lái)完善一下登錄部分。QQ群:152448006
地址:
登錄
登錄部分說(shuō)簡(jiǎn)單也簡(jiǎn)單,說(shuō)難也難!但是做好不太容易。
我考慮了兩個(gè)因素:
1、方便性。用戶都是比較懶的,所以一般是不太喜歡輸入太多內(nèi)容的登錄界面。
2、安全性:首先防止dos攻擊,很多人想到的是驗(yàn)證碼,我也是。所以我在第四次登錄錯(cuò)誤的時(shí)候,我才會(huì)在后臺(tái)校驗(yàn)?zāi)愕尿?yàn)證碼。
驗(yàn)證碼的校驗(yàn)還是要經(jīng)過(guò)你的整個(gè)php的應(yīng)用,我個(gè)人比較建議在php應(yīng)用層之前就把這個(gè)攻擊IP封掉。但是我沒(méi)有這么好的硬件條件,所以我只是做了個(gè)簡(jiǎn)單的應(yīng)用(在數(shù)據(jù)庫(kù)中,還是要經(jīng)過(guò)php的應(yīng)用),等著將來(lái)有條件直接放置到其他應(yīng)用上(如memcached)。
登錄流程
1、打開(kāi)頁(yè)面:
1)如果該用戶登錄超過(guò)三次,那么打開(kāi)頁(yè)面的時(shí)候,就顯示驗(yàn)證碼。
2)如果超過(guò)6次,那么直接就封殺掉該外網(wǎng)IP。
2、登錄操作
1)封鎖IP,我們判斷該IP登錄是否超過(guò)6次。
2)驗(yàn)證帳號(hào)時(shí),我們根據(jù)驗(yàn)證次數(shù)判斷是否進(jìn)行驗(yàn)證碼的判斷。
感謝﹏Sakura,經(jīng)過(guò)他的指點(diǎn),我把程序做了下改動(dòng),現(xiàn)在變成如下的流程圖。——程序變得更加直觀。
界面情況
驗(yàn)證三次后,出現(xiàn)一下情況
驗(yàn)證超過(guò)6次,出現(xiàn)一下情況。
當(dāng)你下次訪問(wèn)的時(shí)候,會(huì)出現(xiàn)一下情況
抽出部分代碼
﹏Sakura指點(diǎn)后,進(jìn)行了改動(dòng),整個(gè)程序看起來(lái)更直觀,易懂。
總結(jié)
歡迎大家一起過(guò)來(lái)開(kāi)發(fā),開(kāi)發(fā)這個(gè)項(xiàng)目除了創(chuàng)作好的產(chǎn)品外,主要是為了技術(shù)交流,看看大家的好的技術(shù)。
原文鏈接:http://www.cnblogs.com/baochuan/archive/2012/09/08/2676763.html
【編輯推薦】