Ich habe einen Code für eine Login-Seite erstellt. Was ich will ist, wenn der Benutzername und das Passwort korrekt sind, dann gehe auf die Home.html Seite. Andernfalls bleiben Sie auf der Login-Seite, aber geben Sie dem Benutzer nur 3 Versuche, sich anzumelden. Ich kann nicht herausfinden, was falsch ist, da es nicht zählt, wie viele Versuche ich mache, noch wird es auf die Home.html-Seite umgeleitet wenn ich es richtig verstehe.Login Versuche und Redirect
var counter = 0;
function checkdetails() {
var name = "",
password = "";
name = form1.txtusername.value
password = form1.txtpassword.value
if (name == "Shauna" && password == "8nss") {
window.alert("Both right")
window.location.replace("Home.html");
form1.txtusername.value = ""
form1.txtpassword.value = ""
} else if (name == "Shauna" && password != "8nss") {
window.alert("Incorrect Password.")
counter = counter + 1
window.alert(3 - counter + " attempts left")
form1.txtusername.value = ""
form1.txtpassword.value = ""
} else if (name != "Shauna" && password == "8nss") {
window.alert("Incorrect Username")
counter = counter + 1
window.alert(3 - counter + " attempts left")
form1.txtusername.value = ""
form1.txtpassword.value = ""
} else if (name != "Shauna" && password != "8nss") {
window.alert("Both Wrong")
counter = counter + 1
window.alert(3 - counter + " attempts left")
form1.txtusername.value = ""
form1.txtpassword.value = ""
}
if (counter == 3) {
window.alert("Incorrect details - Login failed")
window.close()
}
}
<form action="" method="post" name="form1" onsubmit="checkdetails()">
<table bgcolor="white" width="500" border="0" align="center">
<col width="200">
<col width="200">
<tr>
<th colspan="2" align="center" bgcolor="grey">Login</th>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td colspan="2" align="center">Username</td>
</tr>
<tr>
<td colspan="2" align="center">
<label>
<input type="text" name="txtusername" id="txtusername" class="info" required/>
</label>
</td>
<tr>
<td> </td>
</tr>
<tr>
<td colspan="2" align="center">Password</td>
</tr>
<tr>
<td colspan="2" align="center">
<label>
<input type="password" name="txtpassword" id="txtpassword" class="info" required/>
</label>
</td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td colspan="2">
<label>
<input type="checkbox" name="terms" value="terms" id="terms" />Remember Me</label>
</td>
</tr>
<br>
<br>
<br>
<tr>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>
<label>
<input type="submit" name="Login" id="Login" value="Login" />
</label>
</td>
<td>
<label>
<input type="reset" name="Reset" id="Reset" value="Reset" />
</label>
</td>
</tr>
</table>
</form>
Sie wissen, dass das völlig unsicher ist, oder? Sie dürfen sich niemals auf clientseitigen Code verlassen, um Passwörter zu validieren, besonders hart codiert wie das von Ihnen bereitgestellte Beispiel. –
Ich denke, dass er das als Prototyp benutzt. @VitorRigoni – SaidbakR
Verwenden Sie Cookie, um Daten zu speichern, wenn es ungültig ist. Http://stackoverflow.com/questions/16746288/javascript-login-cookies – jewelhuq