亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在登錄時檢查用戶類型(php)

在登錄時檢查用戶類型(php)

PHP
哈士奇WWW 2023-04-15 20:50:19
我制作了一個帶有注冊/登錄系統的網站,我也想制作一個管理面板。我給了我的帳戶管理員用戶類型 (mysql),但我不知道如何在登錄時檢查用戶類型。這是我檢查登錄的身份驗證代碼(echos 有匈牙利語文本不關心):session_start();$DATABASE_HOST = 'sql305.epizy.com';$DATABASE_USER = 'epiz_25331636';$DATABASE_PASS = 'q1SI3G8B0s';$DATABASE_NAME = 'epiz_25331636_accounts';$con = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASS, $DATABASE_NAME);if ( mysqli_connect_errno() ) {    exit('Failed to connect to MySQL: ' . mysqli_connect_error());}if ( !isset($_POST['username'], $_POST['password']) ) {    exit('Felhasználónév és jelszó is szükséges!');}if ($stmt = $con->prepare('SELECT id, password FROM accounts WHERE username = ?')) {    $stmt->bind_param('s', $_POST['username']);    $stmt->execute();    $stmt->store_result();        if ($stmt->num_rows > 0) {    $stmt->bind_result($id, $password);    $stmt->fetch();    if (password_verify($_POST['password'], $password)) {        session_regenerate_id();        $_SESSION['loggedin'] = TRUE;        $_SESSION['name'] = $_POST['username'];        $_SESSION['id'] = $id;        header('Location: home.php');    } else {        echo "<script type='text/javascript'>alert('Helytelen jelszó');window.location='index.html';</script>";    }} else {    echo "<script type='text/javascript'>alert('Helytelen felhasználónév');window.location='index.html';</script>";  }    $stmt->close();}?>
查看完整描述

1 回答

?
炎炎設計

TA貢獻1808條經驗 獲得超4個贊

假設每個用戶都有一個usertype字段,其中包含管理員的“admin”,您可以執行以下操作:


if ($stmt = $con->prepare('SELECT id, password, usertype FROM accounts WHERE username = ?')) {

    $stmt->bind_param('s', $_POST['username']);

    $stmt->execute();

    $stmt->store_result();


    if ($stmt->num_rows > 0) {

        $stmt->bind_result($id, $password, $usertype);

        $stmt->fetch();


        if (password_verify($_POST['password'], $password)) {

            session_regenerate_id();

            $_SESSION['loggedin'] = TRUE;

            $_SESSION['name'] = $_POST['username'];

            $_SESSION['id'] = $id;

            if($usertype == "admin"){

                header('Location: adminpanel.html')

            } else {

                header('Location: home.php');

            }

        } else {

            echo "<script type='text/javascript'>alert('Helytelen jelszó');

            window.location='index.html';

            </script>";

        }

    }

就像已經提到的那樣,如果正在使用,請盡快更改憑據。


查看完整回答
反對 回復 2023-04-15
  • 1 回答
  • 0 關注
  • 131 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號