Ich bin ziemlich neu mit PHP-Programmierung und immer noch selbst vertraut mit den Methoden und Syntax. Im Moment habe ich noch kein Wissen über session
.Umleiten auf eine andere Seite, wenn Login gültig ist, sonst auf der gleichen Seite bleiben
Ich möchte der Benutzer eine Nachricht erhalten, dass der "Benutzer nicht existiert oder falsche Login-Daten", wenn er/sie falsche Login-Daten auf dem Formular eingibt. Andernfalls leiten Sie den Benutzer zur nächsten Seite weiter.
Ich versuchte, die header()
Methode von PHP, aber wenn ich es nach der Zeile alert()
Nachricht setzen, meine alert()
Meldung nicht einmal.
nextpage.php
<?php
if(isset($_POST['btnLogin'])){
$con = mysqli_connect("localhost","root","","myDb")or die("cannot connect");
if(!$con){
die("Connection failed: " . mysqli_connect_errno());
}
$studentNo = $_POST['studentNo'];
$username = $_POST['userName'];
$password = $_POST['password'];
$selectQuery = "SELECT * FROM registered WHERE student_no = '$studentNo' AND username = '$username' AND password = '$password' ";
$result = mysqli_query($con,$selectQuery);
if(mysqli_num_rows($result) == 0){
echo '<script language="javascript">';
echo 'alert("User doesn\'t exist or incorrect login details")';
echo '</script>';
header("Location: login.php"); //take user back to login.php if user doesn't exist
}else{
//do this if user exists
//get Parameters for studentNo, userName, password
}
}
?>
login.php
<form action="nextpage.php" method="POST">
<label>Student No</label>
<input type="text" name="studentNo" placeholder="Student No" required />
<br />
<label>Username</label>
<input type="text" name="userName" placeholder="Username" required />
<br />
<label>Password</label>
<input type="password" name="password" placeholder="Password" required />
<br />
<button type="submit" name="btnLogin">Login</button>
</form>
header()
nimmt Benutzer zurück zu login.php aber die Nachricht nicht angezeigt werden soll.
Gibt es noch einen anderen besseren Weg zu tun, was ich versuche zu tun? Überprüfen Sie zuerst die Anmeldedaten, bevor Sie auf die zweite Seite umleiten. Andernfalls nicht umleiten.
Ich recherchierte und fand, dass ich Daten über <form>
oder andere Javascript-Syntax veröffentlichen kann. Ich würde es vorziehen zu lernen, wie man es mit einfach php
und html
ich hoffe, Sie können mir helfen.
Vielen Dank.
Beantworten Sie dies würde einen Aufsatz über SQL-Injektion, Binding-Parameter, Passwort-Hashing, möglicherweise Server-Client-Architektur und TLS-Verschlüsselung aaaaa und wie HTTP-Weiterleitungen verwenden ... – CD001
Ich könnte nicht mehr mit CD001 zustimmen. Ich kann nur empfehlen, dass Sie mehr über PHP und SQL-Datenbanken recherchieren. Machen Sie auch nicht den Unterschied für serverseitige Sprachen und clientseitige Sprachen, die Reihenfolge, in der sie ausgeführt werden usw., die Ihnen helfen zu verstehen, warum die Verwendung von serverseitigem 'header()' Ihre clientseitige 'alert() stoppt 'vom Laufen. – NewToJS