Ich habe versucht, diesen Code für die Anmeldung verwenden, aber es funktioniert nicht. Wenn ich auf "Senden" klicke, passiert nichts. Als ich mich einloggen wollte, bekomme ich immer einen falschen Passwortfehler, aber mein Passwort ist korrekt. was soll ich machen?Login mit Ajax und PHP immer falsches Passwort
mein HTML
<form class="form-horizontal" id="loginform" method="post">
<div class="form-group">
<label for="userid" class="col-sm-3 control-label">User ID</label>
<div class="col-sm-9 has-feedback">
<input type="text" class="form-control" id="userid" name="userid" placeholder="Enter Your User ID" required>
<span class="glyphicon glyphicon-user form-control-feedback"></span>
</div>
</div>
<div class="form-group">
<label for="password" class="col-sm-3 control-label">Password</label>
<div class="col-sm-9 has-feedback">
<input type="password" class="form-control" id="password" name="password" placeholder="Enter Your Password" required>
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
</div>
</div>
<div class="form-group">
<div class="col-xs-4 col-xs-offset-8">
<button type="submit" id="submit" class="btn btn-danger btn-block btn-flat">Sign In</button>
</div>
</div>
</form>
mein Php
<?php
$userid = security($_POST['userid']);
$password = security($_POST['password']);
$query = mysqli_query($link,"SELECT * FROM user WHERE USER_USERNAME = '".$userid."' AND USER_PASSWORD = '".$password."'");
$numrows = mysqli_num_rows($query);
if ($numrows!==0)
{
while($row = mysqli_fetch_assoc($query))
{
@$_SESSION['session_userid'] = $row['USER_USERNAME'];
@$_SESSION['session_accounttype'] = $row['ACCESS_ID'];
}
//Location Depends on the User Type
if($_SESSION['session_accounttype']=="1")
{
echo 'true';
}
}
else
{
echo 'false';
}
?>
Mein JS
$(document).ready(function(){
$("#add_err").css('display', 'none', 'important');
$("#submit").click(function(){
username=$("#userid").val();
password=$("#password").val();
$.ajax({
type: "POST",
url: "../basefunction/login.php",
data: "userid="+username+"&password="+password,
success: function(html){
if(html=='true') {
//$("#add_err").html("right username or password");
window.location="admin";
}
else {
$("#add_err").css('display', 'inline', 'important');
$("#add_err").html("<img src='images/alert.png' />Wrong username or password");
}
},
beforeSend:function()
{
$("#add_err").css('display', 'inline', 'important');
$("#add_err").html("<img src='images/ajax-loader.gif' /> Loading...")
}
});
return false;
});
});
SQL-Injection-Schwachstellen, Fehlerunterdrückungsoperatoren ... Wenn Sie das debuggen, wo genau schlägt es fehl? Werden die erwarteten Werte an den Server gesendet? Ist die SQL-Abfrage das, was Sie erwarten? Was sind die Ergebnisse dieser Abfrage? Wie lautet die tatsächliche Antwort vom Server? Gibt es Fehler in der Antwort oder in den PHP-Protokollen? Sie sollten auch nach der Ausführung auf Fehler in der SQL-Abfrage prüfen. – David
Hast du deine Passowords nicht "gehackt"? Ich meine, Sie haben ein Coding-Problem, aber Sie zeigen nicht alle relevanten Code hier, so kann ich wirklich nicht sagen! – JustOnUnderMillions
Ich habe mein Passwort nicht hashed, weil es nicht notwendig ist –