我正在建立一个登录系统!
为了存储数据,我将带有对象的数组放入数据库中。
当我检查数据库中是否存在用户名和密码时,一切正常,但是如果我再次进行检查(例如,是否填写了用户名和密码),则它将无法正常工作。
当我将此检查添加到任意项时,然后键入现有的用户名和密码,然后收到“错误的用户名或密码”消息。
<input type="text" id='username'>
<input type="password" id='password'>
<input type="submit" id="submitlogin" value="Login" onclick="login()">
var database = [
{
username: "amr",
password: "123",
},
{
username: "asmr",
password: "321",
},
{
username: "amrik",
password: "1234",
}
]
function login (){
var user = document.getElementById('username').value;
var pass = document.getElementById('password').value;
for(var i = 0; i < database.length; i++)
{ if(user === "" && pass === "")
{
alert("enter username and password");
return;
}
if(user === database[i].username && pass === database[i].password) {
window.location.href = "index.html";
}
}
alert("error username or password");
return;
}
最佳答案
也许使用变量来检查登录状态?
function login (){
var user = document.getElementById('username').value;
var pass = document.getElementById('password').value;
var loggedIn = 0;
for(var i = 0; i < database.length; i++)
{ if(user === "" && pass === "")
{
alert("enter username and password");
return;
}
if(user === database[i].username && pass === database[i].password) {
loggedIn = 1;
window.location.href = "index.html";
}
}
if(loggedIn == 0)
{
alert("error username or password");
}
return;
}
https://jsfiddle.net/40wonL6y/