最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
php注冊(cè)時(shí)候郵箱驗(yàn)證的原理

其實(shí)原理很簡單,你說自動(dòng)生成URL那一步不會(huì),首先URL分為兩部分:
第一部分是一個(gè)驗(yàn)證地址并且?guī)б粋€(gè)標(biāo)識(shí)用戶id的參數(shù),比如:http://www.xxx.com/active.php?uid=1
第二部分其實(shí)就是一個(gè)用來驗(yàn)證的字符串,比如:authcode=asdad1f323ff43f
合起來就是http://www.xxx.com/active.php?uid=1&authcode=asdad1f323ff43f

第一部分是你來決定的,active.php就是你寫的那個(gè)做驗(yàn)證腳本,所以你可以知道地址了?
第二部分不就是個(gè)隨機(jī)生成的字符串嗎?你可以用:md5(自己的域名+時(shí)間戳+驗(yàn)證的用戶名)這個(gè)公式來生成這個(gè)串。當(dāng)然你可以自己定義如何組合這個(gè)串,只要保證他們不是有規(guī)律讓人一下猜到的,也別重復(fù)的就可以。
很簡單是嗎?


至于何時(shí)生成,何時(shí)驗(yàn)證,你可以這樣設(shè)計(jì):
你可以在用戶表中,加兩個(gè)字段:1 (bool isActive)用戶是否已激活,默認(rèn)為false。2 (string authcode)臨時(shí)激活碼。
當(dāng)用戶注冊(cè)后,或點(diǎn)擊激活按鈕后,就執(zhí)行你的一個(gè)腳本:
1 生成激活碼,就是我上面說的方法。
2 將這個(gè)激活碼,存儲(chǔ)這個(gè)激活碼到用戶表的authcode字段。
3 將你的完整激活地址,用郵件發(fā)送到用戶的郵箱
4 你的那個(gè)腳本,在接收到請(qǐng)求時(shí),將兩個(gè)參數(shù)取下來去用戶表中搜索uid=1的用戶的authcode是否與數(shù)據(jù)庫中的相等,如果相等,驗(yàn)證通過,并清空update isActive字段為true,authcode字段更新為空。


就是這樣,當(dāng)然,為了避免生成了重復(fù)的驗(yàn)證碼和別人的猜解,你可以給authcode設(shè)置超時(shí)時(shí)間。這個(gè)有很多種做法,你可以給用戶表再加個(gè)字段是一個(gè)時(shí)間戳,用當(dāng)前時(shí)間戳+有效的時(shí)間戳期限,比如time()+3600,這個(gè)就是一個(gè)小時(shí)的超時(shí)時(shí)間,驗(yàn)證時(shí),你可以同時(shí)再比對(duì)下是否在這個(gè)時(shí)間戳之內(nèi)。這種東西,你也可以放在緩存或內(nèi)存中。這樣會(huì)更好。


你可能還需要做一個(gè)開關(guān),也許你今天想讓新注冊(cè)的用戶都需要郵件激活,而明天也許你又不想了。用來控制,是否需要郵件激活。首先判斷這個(gè)值為true的話,所有注冊(cè)用戶的isActive都為false,否則都為true。

為崇左等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及崇左網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、崇左網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!


網(wǎng)站標(biāo)題:php注冊(cè)時(shí)候郵箱驗(yàn)證的原理
當(dāng)前網(wǎng)址:http://fisionsoft.com.cn/article/jiipoe.html