0
私は、管理者と顧客を格納する役割フィールドを持つユーザーテーブルを持っています。管理者役割を持つユーザーをadminにリダイレクトし、もう1人がindex.phpにリダイレクトするようにします。ログイン - 別のユーザーの役割
私は登録フォームからパスワードを暗号化し、password_verify関数を使用して両方のパスワードが一致するとユーザーにアクセスできるので、これを行う方法はわかりません。
function login_user() {
if(isset($_POST['btnlogin'])) {
global $connection;
$email = $_POST['email'];
$password = $_POST['password'];
$login_query = "SELECT * from users where email = '{$email}'";
$confirm = mysqli_query($connection, $login_query);
while($row = mysqli_fetch_assoc($confirm)) {
$db_pass = $row['password'];
$first_name = $row['first_name'];
$last_name = $row['last_name'];
$contact_num = $row['mobile'];
$email = $row['email'];
$postcode = $row['postcode'];
$role = $row['role'];
$_SESSION['firstname'] = $first_name;
$_SESSION['lastname'] = $last_name;
$_SESSION['mob'] = $contact_num;
$_SESSION['email'] = $email;
$_SESSION['postcode'] = $postcode;
}
if(password_verify($password, $db_pass)) {
redirect("index.php");
}
}
}
私はこのサイトで前にこれを行いました。データベースには私は、ロール=管理者とのスティーブンと呼ばれるユーザーがあります。このステートメントは、最初の条件をスキップし、次の条件index.phpに行く – steven
これは__should__仕事。データベース内の値を再度確認してください。特に 'role'フィールドの値を確認してください。必要に応じて、あなたの質問に追加のコードを投稿してください。 –
私は自分のデータベースをチェックして、ユーザーStevenの役割はAdminと同じです。管理者に行くのではなく、index.phpに行きます...だから変です。 – steven