javascript - 注冊(cè)驗(yàn)證問(wèn)題
問(wèn)題描述
對(duì)于一個(gè)注冊(cè)功能,用戶填寫(xiě)基本數(shù)據(jù)提交后,但是并沒(méi)有完成驗(yàn)證,那么在提交數(shù)據(jù)后,和驗(yàn)證之間的這段時(shí)間內(nèi),數(shù)據(jù)一般放在那兒,客戶端或則服務(wù)端Session,或者數(shù)據(jù)庫(kù)零時(shí)表中。
問(wèn)題解答
回答1:注冊(cè)驗(yàn)證問(wèn)題已經(jīng)解決,此處是使用郵箱驗(yàn)證。步驟如下:
為用戶表增加兩個(gè)字段,hash,active.
為數(shù)據(jù)庫(kù)構(gòu)造一個(gè)存儲(chǔ)過(guò)程,或者其它程序,用于定期掃描用戶表,計(jì)算未激活的賬戶信息提交時(shí)間,超過(guò)固定時(shí)長(zhǎng)的賬戶,將賬戶信息刪除。hash字段用于存儲(chǔ)為每個(gè)用戶生成的一段hash值,用于郵箱驗(yàn)證時(shí),使用hash值找到對(duì)應(yīng)用戶。active存儲(chǔ)兩個(gè)值,0,1.0代表賬戶為激活,1代表賬戶已經(jīng)激活
用戶完成基本信息填寫(xiě)后,進(jìn)行提交操作,然后為用戶生成hash值,將用戶信息存入用戶表中,并將active字段置為0
保存信息后,構(gòu)造一個(gè)連接,將上一步生成的hash值作為鏈接的參數(shù),發(fā)送到用戶的郵箱。
用戶完成驗(yàn)證后,將hash值傳到服務(wù)端,服務(wù)端根據(jù)hash值找到對(duì)應(yīng)的用戶,然后將用戶的active字段置為1,如果未找到,提示用戶信息過(guò)期,重新填寫(xiě)信息注冊(cè)
回答2:不是應(yīng)該就保存在頁(yè)面上么?點(diǎn)提交的時(shí)候重新獲取值就行了。還是說(shuō)你的驗(yàn)證是指郵箱手機(jī)驗(yàn)證什么的?如果那樣就是保存在數(shù)據(jù)庫(kù)
相關(guān)文章:
1. python - linux怎么在每天的凌晨2點(diǎn)執(zhí)行一次這個(gè)log.py文件2. 關(guān)于mysql聯(lián)合查詢一對(duì)多的顯示結(jié)果問(wèn)題3. 實(shí)現(xiàn)bing搜索工具urlAPI提交4. MySQL主鍵沖突時(shí)的更新操作和替換操作在功能上有什么差別(如圖)5. 數(shù)據(jù)庫(kù) - Mysql的存儲(chǔ)過(guò)程真的是個(gè)坑!求助下面的存儲(chǔ)過(guò)程哪里錯(cuò)啦,實(shí)在是找不到哪里的問(wèn)題了。6. windows誤人子弟啊7. 冒昧問(wèn)一下,我這php代碼哪里出錯(cuò)了???8. 如何用筆記本上的apache做微信開(kāi)發(fā)的服務(wù)器9. 我在網(wǎng)址中輸入localhost/abc.php顯示的是not found是為什么呢?10. mysql優(yōu)化 - MySQL如何為配置表建立索引?
