javascript - 数组和对象作为数据库

标签 javascript html arrays loops object

我正在制作一个登录系统! 为了存储数据,我放置了一个包含对象的数组,就像数据库一样。 当我检查数据库中是否存在用户名和密码时,一切正常,但如果我再进行一次检查,例如用户名和密码字段是否已填写,则它无法正常工作。 当我将此检查添加到任何然后当我输入现有的用户名和密码时,我会收到“错误用户名或密码”消息。

<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/

关于javascript - 数组和对象作为数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58892742/

相关文章:

javascript - 判断一个字段是否存在于表单中

javascript - 使用 ko :if binding knockout 绑定(bind)提供程序预处理器

jquery - 如何更改div中的所有子元素

javascript - 将 CSS 类应用于所有行但不应用于表标题

java - 追加到数组与写入文件

javascript - 如何在失败的ajax post请求上恢复可拖动元素

javascript - 在 Node.js 中将数据传递到子路由时出现问题

javascript - 使用自定义元素时 Firefox 中的递归过多

javascript - 使用 AngularJS 修改加载的输入字段值

c - 返回一个指针数组,返回类型?