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 Berechtigungen zu erreichen verwalten. 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.
Wir können eine Benutzertabelle und eine Rollentabelle entwerfen, um Benutzerinformationen und Rolleninformationen zu speichern. Die Benutzertabelle enthält Benutzer-ID, Benutzername, Passwort und andere Felder; die Rollentabelle enthält Rollen-ID, Rollenname und andere Felder. Darüber hinaus können wir auch eine Berechtigungstabelle entwerfen, um Berechtigungsinformationen für verschiedene Funktionen und Seiten zu speichern. Die Berechtigungstabelle enthält Felder wie Berechtigungs-ID, Berechtigungsname und Berechtigungs-URL.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>登录</title> <link rel="stylesheet" href="layui/css/layui.css"> </head> <body> <div class="layui-container"> <form class="layui-form" action="login.php" method="post"> <div class="layui-form-item"> <label class="layui-form-label">用户名</label> <div class="layui-input-inline"> <input type="text" name="username" lay-verify="required" placeholder="请输入用户名" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">密码</label> <div class="layui-input-inline"> <input type="password" name="password" lay-verify="required" placeholder="请输入密码" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-form-item"> <div class="layui-input-block"> <button class="layui-btn" lay-submit lay-filter="login-btn">登录</button> </div> </div> </form> </div> <script src="layui/layui.js"></script> <script> layui.use(['form'], function() { var form = layui.form; form.on('submit(login-btn)', function(data) { // 处理登录请求 }); }); </script> </body> </html>
Zuerst müssen wir ein login.php-Skript schreiben, um Anmeldeanfragen zu verarbeiten. In diesem Skript können wir die Richtigkeit des Benutzernamens und des Passworts überprüfen, indem wir die Benutzertabelle abfragen und die Abfrageergebnisse an die Front-End-Seite zurückgeben. Hier ist ein Beispielcode eines vereinfachten login.php-Skripts:
<?php // 连接数据库 $conn = mysqli_connect("localhost", "root", "123456", "mydb"); if (!$conn) { die("连接数据库失败:" . mysqli_connect_error()); } // 处理登录请求 $username = $_POST["username"]; $password = $_POST["password"]; $sql = "SELECT * FROM user WHERE username='" . $username . "' AND password='" . $password . "'"; $result = mysqli_query($conn, $sql); if (mysqli_num_rows($result) > 0) { // 登录成功,设置登录状态和权限 session_start(); $_SESSION["username"] = $username; // 获取用户角色 $role = mysqli_fetch_assoc($result)["role"]; // 根据角色设置权限 if ($role == "admin") { // 设置管理员权限 $_SESSION["role"] = "admin"; } else if ($role == "user") { // 设置普通用户权限 $_SESSION["role"] = "user"; } else { // 设置访客权限 $_SESSION["role"] = "guest"; } echo "success"; } else { // 登录失败 echo "error"; } // 关闭数据库连接 mysqli_close($conn); ?>
Nach Abschluss der Anmeldeüberprüfung können wir basierend auf den Berechtigungen des Benutzers entscheiden, auf welche Funktionen und Seiten der Benutzer zugreifen kann. Beim Erstellen jeder Funktion und Seite können wir PHP verwenden, um die Berechtigungen des Benutzers zu ermitteln und basierend auf den Beurteilungsergebnissen eine entsprechende Verarbeitung durchzuführen.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>权限管理</title> <link rel="stylesheet" href="layui/css/layui.css"> </head> <body> <div class="layui-container"> <table class="layui-table" lay-data="{url:'get_permissions.php', page:true, limit:10, id:'permission_table'}" lay-filter="permission_table"> <thead> <tr> <th lay-data="{field:'id', width:80, sort:true}">ID</th> <th lay-data="{field:'name', width:120}">权限名</th> <th lay-data="{field:'url'}">URL</th> </tr> </thead> </table> </div> <script src="layui/layui.js"></script> <script> layui.use(['table'], function() { var table = layui.table; // 监听表格事件 table.on('tool(permission_table)', function(obj) { var data = obj.data; if (obj.event === 'edit') { // 编辑权限 editPermission(data); } else if (obj.event === 'delete') { // 删除权限 deletePermission(data); } }); // 编辑权限 function editPermission(data) { // TODO: 编辑权限的逻辑 } // 删除权限 function deletePermission(data) { // TODO: 删除权限的逻辑 } }); </script> </body> </html>
Auf der Berechtigungsverwaltungsseite können wir die Ereignisse der Tabelle abhören und den entsprechenden Ereignishandler auslösen, wenn der Benutzer auf die Schaltfläche „Bearbeiten“ oder „Löschen“ klickt. In der Ereignisverarbeitungsfunktion können wir die AJAX-Technologie verwenden, um den entsprechenden Vorgang zur Verarbeitung in den Hintergrund zu senden.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie das Layui-Framework, um ein Berechtigungsverwaltungssystem zu entwickeln, das die Anmeldung mehrerer Benutzer unterstützt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!