Heim Backend-Entwicklung PHP-Tutorial Wie verwende ich PHP-Funktionen, um eine mehrstufige Rollen- und Berechtigungsverwaltung für die Benutzeranmeldung und -abmeldung zu implementieren?

Wie verwende ich PHP-Funktionen, um eine mehrstufige Rollen- und Berechtigungsverwaltung für die Benutzeranmeldung und -abmeldung zu implementieren?

Jul 24, 2023 pm 09:49 PM
注销 用户登录 权限管理 多级角色

Wie verwende ich PHP-Funktionen, um eine mehrstufige Rollen- und Berechtigungsverwaltung für die Benutzeranmeldung und -abmeldung zu implementieren?

Benutzeranmeldung und -abmeldung ist eine sehr häufige und wichtige Funktion bei der Entwicklung von Websites. Mit der Erweiterung der Website-Funktionen ist in der Regel ein mehrstufiges Rollen- und Berechtigungsmanagement erforderlich, um sicherzustellen, dass verschiedene Benutzer über unterschiedliche Bedienberechtigungen verfügen. In diesem Artikel wird erläutert, wie Sie mithilfe von PHP-Funktionen diese Funktionalität erreichen, und es werden Codebeispiele bereitgestellt.

Zuerst müssen wir eine Datenbanktabelle erstellen, um Benutzerinformationen zu speichern. Die Tabellenstruktur ist wie folgt:

CREATE TABLE users (
    id INT(11) AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(100) NOT NULL,
    password VARCHAR(100) NOT NULL,
    role VARCHAR(50) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Nach dem Login kopieren

Darunter speichert username den Benutzernamen, password speichert den Hashwert des Passworts und role speichert die Benutzerrolle, created_at speichert die Benutzererstellungszeit. username 存储用户名,password 存储密码的散列值,role 存储用户角色,created_at 存储用户创建时间。

接下来,我们需要编写登录和注销功能的PHP代码。首先是登录功能:

function login($username, $password) {
    // 从数据库中查询用户信息
    $query = "SELECT * FROM users WHERE username = '$username'";
    $result = mysqli_query($conn, $query);
    
    if (mysqli_num_rows($result) == 1) {
        $user = mysqli_fetch_assoc($result);

        // 验证密码
        if (password_verify($password, $user['password'])) {
            // 设置用户登录状态
            $_SESSION['user_id'] = $user['id'];
            $_SESSION['username'] = $user['username'];
            $_SESSION['role'] = $user['role'];

            return true;
        }
    }

    return false;
}
Nach dem Login kopieren

上述代码首先查询数据库中是否存在该用户名,若存在,则通过 password_verify 函数验证密码的正确性。若验证通过,则将用户信息存储在 $_SESSION 中,实现用户登录。

接下来是注销功能的代码:

function logout() {
    // 销毁session
    session_unset();
    session_destroy();
}
Nach dem Login kopieren

上述代码通过调用 session_unset 函数和 session_destroy 函数销毁当前的 $_SESSION

通过以上的代码,我们可以实现基本的用户登录和注销功能。但为了实现多级角色和权限管理,我们还需要提供相应的功能接口。

首先,我们需要编写一个检查用户权限的函数:

function checkPermission($requiredRole) {
    if (isset($_SESSION['role']) && $_SESSION['role'] == $requiredRole) {
        return true;
    } else {
        return false;
    }
}
Nach dem Login kopieren

上述代码会检查当前用户的角色是否满足所需的角色。若满足,则返回 true,否则返回 false

接下来,我们可以通过调用 checkPermission

Als nächstes müssen wir den PHP-Code für die Anmelde- und Abmeldefunktionen schreiben. Die erste ist die Anmeldefunktion:

if (checkPermission('admin')) {
    // 执行管理员操作
} elseif (checkPermission('user')) {
    // 执行普通用户操作
} else {
    // 无权限操作
}
Nach dem Login kopieren
Der obige Code fragt zunächst ab, ob der Benutzername in der Datenbank vorhanden ist. Wenn er vorhanden ist, wird die Richtigkeit des Passworts durch die Funktion password_verify überprüft. Wenn die Überprüfung bestanden wird, werden die Benutzerinformationen in $_SESSION gespeichert, um die Benutzeranmeldung zu realisieren.

Als nächstes folgt der Code für die Abmeldefunktion: 🎜rrreee🎜Der obige Code zerstört die aktuelle $_SESSION, indem er die Funktion session_unset und den session_destroyaufruft > Funktion. 🎜🎜Mit dem obigen Code können wir grundlegende Benutzeranmelde- und Abmeldefunktionen implementieren. Um jedoch ein mehrstufiges Rollen- und Berechtigungsmanagement zu erreichen, müssen wir auch entsprechende funktionale Schnittstellen bereitstellen. 🎜🎜Zuerst müssen wir eine Funktion schreiben, die Benutzerberechtigungen überprüft: 🎜rrreee🎜Der obige Code prüft, ob die Rolle des aktuellen Benutzers die erforderlichen Rollen erfüllt. Wenn Sie zufrieden sind, geben Sie true zurück, andernfalls geben Sie false zurück. 🎜🎜Als nächstes können wir die entsprechende Berechtigungskontrolle implementieren, indem wir die Funktion checkPermission aufrufen. 🎜rrreee🎜Der obige Code führt entsprechende Vorgänge basierend auf der Rolle des Benutzers aus. Wenn es sich bei der Benutzerrolle um einen Administrator handelt, werden Administratorvorgänge ausgeführt. Wenn es sich bei der Benutzerrolle um einen normalen Benutzer handelt, werden normale Benutzervorgänge ausgeführt. Wenn der Benutzer keine Berechtigungen hat, werden Vorgänge ohne Berechtigungen ausgeführt. 🎜🎜Zusammenfassend lässt sich sagen, dass wir anhand der obigen Codebeispiele PHP-Funktionen verwenden, um eine mehrstufige Rollen- und Berechtigungsverwaltung für die Benutzeranmeldung und -abmeldung zu implementieren. Bei der Entwicklung einer Website kann mit dieser Methode eine flexible Steuerung der Benutzerberechtigungen erreicht und die Sicherheit der Website gewährleistet werden. 🎜

Das obige ist der detaillierte Inhalt vonWie verwende ich PHP-Funktionen, um eine mehrstufige Rollen- und Berechtigungsverwaltung für die Benutzeranmeldung und -abmeldung zu implementieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Kann ich mein Xiaohongshu-Konto kündigen und wiederherstellen? Was passiert nach der Absage von Xiaohongshu? Kann ich mein Xiaohongshu-Konto kündigen und wiederherstellen? Was passiert nach der Absage von Xiaohongshu? Mar 23, 2024 am 11:11 AM

Mit der rasanten Entwicklung der sozialen Medien hat sich Xiaohongshu zu einer der beliebtesten Plattformen für Nutzer entwickelt, auf denen sie ihr Leben und ihre Einkaufserlebnisse teilen können. Manchmal müssen wir jedoch unser Xiaohongshu-Konto kündigen, sei es aus persönlichen Gründen, Sicherheitsbedenken oder anderen Erwägungen. Können wir das Konto jedoch nach der Abmeldung wiederherstellen? Lass uns genauer hinschauen. 1. Kann ich mein Xiaohongshu-Konto nach der Kündigung trotzdem wiederherstellen? Werfen wir einen Blick auf den Kontoauflösungsprozess von Xiaohongshu. Wenn Benutzer beschließen, ihr Konto zu kündigen, können sie den Abmeldevorgang abschließen, indem sie die Seite „Einstellungen“ der Xiaohongshu-App aufrufen, „Konto und Sicherheit“ auswählen und dann auf die Schaltfläche „Konto kündigen“ klicken. Nach Bestätigung der Kündigung verarbeitet Xiaohongshu das Konto des Nutzers und löscht relevante personenbezogene Daten und Veröffentlichungen.

Wie kündige ich ein Alipay-Konto? Schritte zum Kündigen eines Alipay-Kontos. Wie kündige ich ein Alipay-Konto? Schritte zum Kündigen eines Alipay-Kontos. Feb 22, 2024 pm 03:40 PM

Sie können sich über die Benutzeroberfläche zum Abmelden Ihres Kontos unter „Konto und Sicherheit“ abmelden. Tutorial Anwendbares Modell: iPhone13 System: iOS15.5 Version: Alipay 10.2.8 Analyse 1 Klicken Sie auf das kleine Zahnradsymbol in der oberen rechten Ecke der Benutzeroberfläche „Mein“ von Alipay. 2Klicken Sie im Popup-Fenster auf [Konto und Sicherheit]. 3Klicken Sie auf der Konto- und Sicherheitsoberfläche auf [Sicherheitscenter]. 4Klicken Sie auf der Security Center-Benutzeroberfläche auf [Konto abmelden]. 5Klicken Sie auf [Jetzt abbrechen] und führen Sie die entsprechenden Vorgänge gemäß den Anweisungen zum Abmelden von Alipay aus. Ergänzung: Wenn Alipay storniert wird, kann ich es trotzdem wieder beantragen? 1 Wenn Alipay storniert wird, können Sie einen erneuten Antrag stellen, das ursprüngliche Konto kann jedoch nicht wiederhergestellt werden. Sobald das Alipay-Konto erfolgreich geschlossen wurde, kann es nicht wiederhergestellt werden und die ursprünglichen Rechte und Dienste des Kontos verlieren ihre Gültigkeit. das heisst

So kündigen Sie die China Mobile-Karte So kündigen Sie die China Mobile-Karte Mar 14, 2024 pm 06:25 PM

Wie kann man eine China Mobile-Karte kündigen? Die meisten Benutzer wissen nicht, wie man eine China Mobile-Karte kündigt Interessierte Nutzer: Schauen Sie vorbei! So kündigen Sie die China Mobile-Karte: 1. Öffnen Sie zunächst die China Mobile-App, klicken Sie auf den Bereich [Mein] in der unteren rechten Ecke der Hauptseite und wählen Sie die Schaltfläche [Einstellungen] in der oberen rechten Ecke. 2. Springen Sie dann zu Wählen Sie auf der Funktionsseite „Konto und Sicherheit“ die Option „Konto und Sicherheit“ aus. 3. Gehen Sie dann zur Seite „Konto- und Sicherheitsdienst“ und suchen Sie nach der Funktion „Abmeldedienst“. Geben Sie das quadratische Feld ein und klicken Sie auf [Antrag bestätigen], um sich abzumelden.

Wie kann ich ein Douban-Konto kündigen? Vorgang zur Löschung des Douban-Kontos! Wie kann ich ein Douban-Konto kündigen? Vorgang zur Löschung des Douban-Kontos! Mar 15, 2024 pm 06:40 PM

1. Wie kann ich das Douban-Konto kündigen? Vorgang zur Löschung des Douban-Kontos! 1. Klicken Sie auf die Schaltfläche in der oberen linken Ecke der Douban-App und wählen Sie Einstellungen. 2. Wählen Sie in der Einstellungsoberfläche die Informations- und Kontooptionen aus. 3. Rufen Sie dann die Seite mit den Informationen und Kontoeinstellungen auf und klicken Sie auf Douban Security Center. 4. Nachdem Sie zur Douban Security Center-Oberfläche gesprungen sind, klicken Sie auf, um sich vom Konto abzumelden. 5. Klicken Sie abschließend beim Löschen des Kontos auf die Schaltfläche „Weiter zum Abmelden“, um die Kontoabmeldung abzuschließen.

Kann ich mein Xiaohongshu-Konto zurückerhalten, wenn ich es gekündigt habe? Wirkt die Kündigung sofort? Kann ich mein Xiaohongshu-Konto zurückerhalten, wenn ich es gekündigt habe? Wirkt die Kündigung sofort? Mar 08, 2024 am 08:04 AM

Mit dem Aufkommen der sozialen Medien entscheiden sich in den letzten Jahren immer mehr Menschen dafür, ihre Lebensdaten im Internet zu teilen. Als soziale Plattform zum Thema Einkaufsbewertungen und Life-Sharing ist Xiaohongshu bei jungen Menschen sehr beliebt. Manchmal kann es jedoch vorkommen, dass wir unser Xiaohongshu-Konto kündigen müssen. Kann ich Xiaohongshu trotzdem zurückbekommen, wenn es abgesagt wurde? 1. Kann ich Xiaohongshu trotzdem zurückbekommen, wenn es abgesagt wurde? kann nicht. Wenn wir uns entscheiden, unser Xiaohongshu-Konto zu kündigen, müssen wir zunächst wissen, dass der Löschvorgang unwiderruflich ist. Sobald die Kündigung erfolgreich ist, kann das Konto nicht wiederhergestellt werden. Daher müssen wir es uns zweimal überlegen, bevor wir mit dem Abmeldevorgang fortfahren. Auf der offiziellen Hilfeseite von Xiaohongshu heißt es deutlich, dass die entsprechenden Daten und Inhalte dauerhaft gelöscht werden, sobald ein Benutzer sein Konto löscht.

So melden Sie sich in Debian 11 ab oder fahren das System herunter So melden Sie sich in Debian 11 ab oder fahren das System herunter Dec 27, 2023 pm 02:22 PM

Wie fährt man das System in Debian11 herunter? Werfen wir einen Blick auf die spezifischen Vorgänge mit dem Editor. Methode 1: Klicken Sie auf [Alle Apps] – [Abmelden]. Klicken Sie in der Popup-Oberfläche auf [Herunterfahren]. Methode 2: Führen Sie den folgenden Befehl im Terminal aus: sudoshutdown-hnow

So verwenden Sie das Layui-Framework, um ein Berechtigungsverwaltungssystem zu entwickeln, das die Anmeldung mehrerer Benutzer unterstützt So verwenden Sie das Layui-Framework, um ein Berechtigungsverwaltungssystem zu entwickeln, das die Anmeldung mehrerer Benutzer unterstützt Oct 27, 2023 pm 01:27 PM

So verwenden Sie das Layui-Framework, um ein Berechtigungsverwaltungssystem zu entwickeln, das die Mehrbenutzeranmeldung unterstützt. Einführung: Im modernen Internetzeitalter müssen immer mehr Anwendungen die Mehrbenutzeranmeldung unterstützen, um personalisierte Funktionen und Berechtigungsverwaltung zu erreichen. Um die Sicherheit des Systems und den Datenschutz zu schützen, müssen Entwickler bestimmte Mittel verwenden, um Mehrbenutzer-Anmelde- und Berechtigungsverwaltungsfunktionen zu implementieren. In diesem Artikel wird erläutert, wie Sie mithilfe des Layui-Frameworks ein Berechtigungsverwaltungssystem entwickeln, das die Anmeldung mehrerer Benutzer unterstützt, und es werden spezifische Codebeispiele aufgeführt. Vorbereitung vor Beginn der Entwicklung

Wie implementiert man die Datenfreigabe und Berechtigungsverwaltung in React Query? Wie implementiert man die Datenfreigabe und Berechtigungsverwaltung in React Query? Sep 27, 2023 pm 04:13 PM

Wie implementiert man Datenfreigabe und Berechtigungsverwaltung in ReactQuery? Fortschritte in der Technologie haben das Datenmanagement in der Frontend-Entwicklung komplexer gemacht. Auf herkömmliche Weise verwenden wir möglicherweise Statusverwaltungstools wie Redux oder Mobx, um den Datenaustausch und die Berechtigungsverwaltung zu verwalten. Nach dem Aufkommen von ReactQuery können wir diese Probleme jedoch bequemer lösen. In diesem Artikel erklären wir, wie Sie die Datenfreigabe und Berechtigungen in ReactQuery implementieren

See all articles