[英]Validate and allow specific username to login in username text field of HTML
我只允許兩個選定的用戶單擊“提交”按鈕登錄到我的應用程序。 這兩個用戶名列在名為user.txt的文本文件中,因此,應讀取username參數,如果在文本字段中輸入的用戶名與user.txt文件的條目匹配,則必須允許該用戶登錄,否則出錯應該顯示。
注意:這里的挑戰是我已經有一個validation( validateForm()) ,單擊Submit按鈕可以正常工作。 它檢查以確保用戶名和密碼字段不為空。 我需要這個新的特定用戶名,以允許進行驗證驗證以及單擊“提交”按鈕。
有人可以建議我示例代碼,如何使用Ajax或jQuery或簡單的JavaScript處理此驗證?
Username.txt文件
Username1 : Tom
Username2 : Harry
檢查用戶名和密碼文本字段是否不為空:
function validateForm() {
var x = document.forms["login"]["userid"].value;
if (x == null || x == "") {
alert("Username is empty");
return false;
}
var x = document.forms["login"]["pswrd"].value;
if (x == null || x == "") {
alert("Password is empty");
return false;
}
}
您需要檢查file.txt所在的服務器(順便說一句:通常將數據庫用於此目的)。
在客戶端(javascript)上執行此操作的唯一方法是將名稱列表包含在數組中-但這沒有意義-因為客戶端可以看到該數組。 因此,您確實應該為此目的使用服務器端。
如果您要進行正確的(安全)身份驗證,請參閱此類教程。
如果只想檢查用戶名,請嘗試以下jQuery代碼:
$.ajax({
type: "POST",
url: "script_url",
dataType: "json",
data: {
user : $("#user").val(),
call : "checkUser"
},
beforeSend: function(){ },
success : function(response){
if(!response){
alert('User not allowed!');
}
},
complete: function(){ }
})
和PHP代碼:
$lines = file('../location/Username.txt');
$arr_users = array();
foreach($lines as $line){
$arr = explode(':', $line);
$arr_users[] = trim($arr[1]);
}
function checkUser($request){
return in_array($request['user']);
}
if (!empty($_POST['call'])) {
die($_POST['call']($_POST));
}
最好的祝福!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.