您好,登錄后才能下訂單哦!
這篇文章運用簡單易懂的例子給大家介紹如何使用js進行表單的簡單密碼驗證,代碼非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
首先我們要了解一下如何實現密碼的安全輸入
許多網站現在都需要注冊,這意味著需要為用戶分配用戶名和密碼。以下是一些簡單的步驟,可以使流程更加安全。
使用“password”輸入類型
使用<input type =“password”>代替<input type =“text”>,因為這樣可以讓瀏覽器(和用戶)知道需要保護該字段的內容。
鍵入時屏幕上不會顯示密碼,大多數瀏覽器也不會像其他表單元素那樣“記住”在密碼字段中輸入的值。
在某些情況下,例如在移動設備上,顯示密碼可以提高可用性而不會影響安全性。畢竟,只有瀏覽器顯示被混淆而不是數據傳輸。
確認密碼輸入
由于密碼輸入類型模糊了鍵入的文本,因此您應該讓用戶確認他們沒有犯錯。最簡單的方法是輸入兩次密碼,然后檢查它們是否相同。
另一種方法是顯示他們作為“確認頁面”的一部分輸入的內容。這里的問題是您在瀏覽器,瀏覽器緩存,代理等中顯示密碼。為了安全起見,密碼絕不應以HTML格式顯示或通過電子郵件發送。
強制執行“強大”密碼(復雜的密碼)
如果您擔心安全性,您應該對有效密碼的構成有一些政策。一些常見的限制是:
1、至少n個字符;
2、大寫和小寫字符的組合;
3、一個或多個數字;
4、與其他用戶數據無關(名稱,地址,用戶名,......);
現在留下最后一個要求,因為它需要一個服務器端腳本,讓我們看看使用客戶端HTML和JavaScript的可能性。
服務器安全
雖然擁有復雜的密碼是一個很好的第一步,但需要在服務器上采取其他措施來備份,以防止暴力攻擊。一種流行的方法是安裝Fail2Ban來監視日志文件并鎖定重復的錯誤。當然,僅當你的登錄系統報告登錄嘗試失敗到系統日志文件時才有效。否則您的應用程序需要提供此功能。
密碼需要加密存儲在數據庫或其他地方,任何備份也應加密。
下面我們來使用js實現一個簡單的表單驗證的操作
下面的表單有三個輸入字段:username,pwd1和pwd2。提交表單時,checkForm腳本會解析輸入值并返回true或false。如果返回false值,則表單提交將被取消。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <script type="text/javascript"> function checkForm(form) { if(form.username.value == "") { alert("錯誤:用戶名不能為空!"); form.username.focus(); return false; } re = /^\w+$/; if(!re.test(form.username.value)) { alert("錯誤:用戶名必須只包含字母、數字和下劃線!"); form.username.focus(); return false; } if(form.pwd1.value != "" && form.pwd1.value == form.pwd2.value) { if(form.pwd1.value.length < 6) { alert("錯誤:密碼必須至少包含六個字符!"); form.pwd1.focus(); return false; } if(form.pwd1.value == form.username.value) { alert("錯誤:密碼必須與用戶名不同!"); form.pwd1.focus(); return false; } re = /[0-9]/; if(!re.test(form.pwd1.value)) { alert("錯誤:密碼必須包含至少一個數字(0至9)!"); form.pwd1.focus(); return false; } re = /[a-z]/; if(!re.test(form.pwd1.value)) { alert("錯誤:密碼必須包含至少一個小寫字母(a-z)!"); form.pwd1.focus(); return false; } re = /[A-Z]/; if(!re.test(form.pwd1.value)) { alert("錯誤:密碼必須包含至少一個大寫字母(A-Z)!"); form.pwd1.focus(); return false; } } else { alert("錯誤:請檢查并確認您輸入的密碼是否一致!"); form.pwd1.focus(); return false; } alert("You entered a valid password: " + form.pwd1.value); return true; } </script> </head> <body> <form onsubmit="return checkForm(this);"> <p>用戶名: <input type="text" name="username"></p> <p>密 碼: <input type="password" name="pwd1"></p> <p>確認密碼: <input type="password" name="pwd2"></p> <p><input type="submit"></p> </form> </body> </html>
效果圖:
當我們輸入的兩次密碼不一致時,會報錯:
請記住,由于JavaScript并非在所有瀏覽器中都可用, 因此在將數據記錄到數據庫或其他地方之前,還應使用服務器端腳本來驗證所有數據。
關于如何使用js進行表單的簡單密碼驗證就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。