Ich habe einen Login-Code gemacht, aber die Abfrage funktioniert nicht, es sagt, dass das Konto nicht korrekt ist, so dachte ich, es ist die Abfrage, die nicht gut ist.mysqli Variable in Abfrage funktioniert nicht
'SELECT * FROM `hexa-it-login` WHERE `e_mail`="'.$e_mail.'" AND `password`="'.$password.'"'
Hier ist der vollständige Code.
require 'connect.php';
if(isset($_POST['login'])){
$e_mail = $_POST['e_mail'];
$password = $_POST['password'];
$result = mysqli_query($con, 'SELECT * FROM `hexa-it-login` WHERE `e_mail`="'.$e_mail.'" AND `password`="'.$password.'"');
if(mysqli_num_rows($result)==1){
$_SESSION['e_mail'] = $e_mail;
header('Location: ../paneel0.php');
}
else
echo "Dit account bestaat niet!";
}
Die Abfrage ist nicht so gut, weil Sie Raw-String-Verkettung anstelle von vorbereiteten Anweisungen verwenden. Ihre Abfrage könnte leicht SQL-injiziert werden, was dazu führt, dass Ihrer Datenbank schlimme Dinge passieren. –
Ich dachte, dass im Jahr 2017 jeder mit vorbereiteten Aussagen, aber sieht aus wie ich falsch war ... Überprüfen Sie zuerst diesen Link, wie vorgefertigte Anweisungen zu verwenden: http://php.net/manual/en/mysqli.prepare.php –
Mai Passwort gespeichert werden in der DB ist ** verschlüsselt ** eine und Überprüfung Anmeldung über ** Plain ** Passwort. Dies kann einer der Gründe für die Ausführung von anderen Teil sein. –