javascript - 注冊(cè)驗(yàn)證問題
問題描述
對(duì)于一個(gè)注冊(cè)功能,用戶填寫基本數(shù)據(jù)提交后,但是并沒有完成驗(yàn)證,那么在提交數(shù)據(jù)后,和驗(yàn)證之間的這段時(shí)間內(nèi),數(shù)據(jù)一般放在那兒,客戶端或則服務(wù)端Session,或者數(shù)據(jù)庫零時(shí)表中。
問題解答
回答1:注冊(cè)驗(yàn)證問題已經(jīng)解決,此處是使用郵箱驗(yàn)證。步驟如下:
為用戶表增加兩個(gè)字段,hash,active.
為數(shù)據(jù)庫構(gòu)造一個(gè)存儲(chǔ)過程,或者其它程序,用于定期掃描用戶表,計(jì)算未激活的賬戶信息提交時(shí)間,超過固定時(shí)長(zhǎng)的賬戶,將賬戶信息刪除。hash字段用于存儲(chǔ)為每個(gè)用戶生成的一段hash值,用于郵箱驗(yàn)證時(shí),使用hash值找到對(duì)應(yīng)用戶。active存儲(chǔ)兩個(gè)值,0,1.0代表賬戶為激活,1代表賬戶已經(jīng)激活
用戶完成基本信息填寫后,進(jìn)行提交操作,然后為用戶生成hash值,將用戶信息存入用戶表中,并將active字段置為0
保存信息后,構(gòu)造一個(gè)連接,將上一步生成的hash值作為鏈接的參數(shù),發(fā)送到用戶的郵箱。
用戶完成驗(yàn)證后,將hash值傳到服務(wù)端,服務(wù)端根據(jù)hash值找到對(duì)應(yīng)的用戶,然后將用戶的active字段置為1,如果未找到,提示用戶信息過期,重新填寫信息注冊(cè)
回答2:不是應(yīng)該就保存在頁面上么?點(diǎn)提交的時(shí)候重新獲取值就行了。還是說你的驗(yàn)證是指郵箱手機(jī)驗(yàn)證什么的?如果那樣就是保存在數(shù)據(jù)庫
相關(guān)文章:
1. html5 - datatables 加載不出來數(shù)據(jù)。2. node.js - mongodb查找子對(duì)象的名稱為某個(gè)值的對(duì)象的方法3. 測(cè)試自動(dòng)化html元素選擇器元素ID或DataAttribute [關(guān)閉]4. html5和Flash對(duì)抗是什么情況?5. javascript - QQ第三方登錄的問題6. 運(yùn)行python程序時(shí)出現(xiàn)“應(yīng)用程序發(fā)生異常”的內(nèi)存錯(cuò)誤?7. 利用IPMI遠(yuǎn)程安裝centos報(bào)錯(cuò)!8. java - Spring boot 讀取 放在 jar 包外的,log4j 配置文件,系統(tǒng)有創(chuàng)建日志文件,不寫入日志信息。9. spring-mvc - spring-session-redis HttpSessionListener失效10. 正在使用electron和node.js做桌面應(yīng)用,需要實(shí)時(shí)監(jiān)聽是否有網(wǎng)絡(luò)連接,node或者electron是否可以做到

網(wǎng)公網(wǎng)安備