Ich möchte diese Anweisung den Benutzernamen des Benutzers anzeigen und ob sie ein Administrator sind oder nicht. Dies wird durch die Suche nach der E-Mail und dem Passwort im Formular bestimmt. Momentan wird nur "Sie sind kein Administrator" angezeigt, wenn Sie ausgeführt werden.PHP zeigt keine Ergebnisse
Ich denke, das ist, weil es nicht wirklich den Wert innerhalb der Datenbank und Standard macht die Admin-Variable in PHP 0, führt daher die else if-Anweisung.
PHP:
<?php
//connection details
$servername = "localhost";
$server_username = "root";
$server_password = "";
$dbname = "coursework";
$conn = mysqli_connect($servername, $server_username, $server_password, $dbname);
$email=$_GET['email'];
$password=$_GET['password'];
//prepared statement
$stmt = mysqli_prepare($conn, "SELECT username, admin FROM users WHERE email = ? AND password = ?");
//dealing with the parameters
mysqli_stmt_bind_param($stmt, "ss", $email, $password);
mysqli_stmt_execute($stmt);
mysqli_stmt_bind_result($stmt, $result_username, $result_admin);
while($row = mysqli_stmt_fetch($stmt)){
if($row['admin'] == 1){
echo "You are an admin " . $row['username'];
}
else if($row['admin'] == 0){
echo "You are NOT an admin " . $row['username'];
}
else{
echo "You are not registered";
}
}
//close statement and connection
mysqli_stmt_close($stmt);
mysqli_close($conn);
?>
Nun, Sie könnten sicher sein, gegen MySQL-Injektionen .. Sie sollten keine Klartext-Passwörter in Ihrer Anwendung lesen (http://php.net/manual/en/faq.passwords.php) –
Was ist der Spaltentyp aus Administrator? –
print '$ row ['admin']' und sehen, welche Daten dort – Bhargav