MySQLデータベースからデータを取得するためにPHPスクリプトを使用し、入力されたパスワードがデータベースのものと一致するかどうかを確認しています。はいの場合は、ユーザーをサイトにリダイレクトする必要があります。しかし、実行すると、$ errorMessageとして定義されたメッセージが表示されます。MySQLのデータを取得するためのPHPスクリプトが動作しない
私は間違っていますか?このスクリプトは、ブートストラップを使用するログインフォーム用です。
ありがとうございます!
<?php
$link = mysqli_connect("localhost","root","password") or die("Verbindung zum Server nicht möglich. Bitte kontaktiere uns.");
mysqli_select_db($link,"berufs_schule");
if(isset($_REQUEST['submit'])){
$errorMessage = "Ein Fehler ist aufgetreten.";
$email=$_POST['email'];
$password=$_POST['password'];
if ($errorMessage != "") {
echo "<p class='message'>" .$errorMessage. "</p>";
}
else{
$query = "SELECT email, password FROM members WHERE email='$email'";
while ($rows = mysqli_fetch_array($query)):
$name_db = $rows['name'];
$password_db = $rows['password'];
if(md5($password) == $password_db){
echo "<meta http-equiv='refresh' content=\"0; url=success.html\">";
} else {
echo "<p class='message'>Passwort falsch, bitte versuche es erneut!</p>";
}
endwhile;
}
}
?>
EDIT:
私は今にErrorMessageのチェックを削除し、そして今それはちょうど私に空白の画面を表示し、「(パスワードが正しくないことを出力しないPasswortのfalsch、bitte versuche ES erneut! ")、またはsuccess.htmlに私をリダイレクトします。エラーは何ができますか?
EDIT 2:http://test.enderpixel.net/berufs.schule/login.html
どのような種類のerrorMessageがありますか? –
で質問を編集してください。最初に '$ errorMessage =" Ein Fehler ist aufgetretenを設定しているので、実際のクエリは決して実行されません。 '$ errorMessage'が設定されている場合、この部分' if($ errorMessage!= ""){// ...} else {/ ...} 'はクエリの実行をスキップします。 – Cyclonecode
ああ問題は何か分かります。あなたの$ errorMessageが定義されているので空ではない –