Maison  >  Article  >  développement back-end  >  Comment utiliser la fonction PHP Developer City : gestion des autorisations de construction et système d'administration

Comment utiliser la fonction PHP Developer City : gestion des autorisations de construction et système d'administration

WBOY
WBOYoriginal
2023-07-29 17:31:531261parcourir

Comment utiliser la fonction PHP Developer Mall : créer un système de gestion des autorisations et d'administration

Avec le développement d'Internet, les centres commerciaux en ligne sont devenus le choix de nombreuses entreprises et entrepreneurs individuels. Lors du développement d’un système de centre commercial, la gestion des autorisations et le système d’administration sont l’une des fonctions très importantes. Cet article expliquera comment utiliser PHP pour développer des fonctions urbaines et créer des systèmes de gestion des autorisations et d'administration.

1. Conception de la base de données

Avant de commencer le développement, vous devez d'abord concevoir la structure de la base de données. Dans le système du centre commercial, les tables couramment utilisées incluent la table des utilisateurs, la table des produits, la table des commandes, etc. Dans le but de réaliser un système de gestion des autorisations et d'administrateur, nous devons également ajouter une table d'administrateur et une table d'autorisation.

Exemple de conception de table d'administrateur :

CREATE TABLE admin (admin (
id int(11) NOT NULL AUTO_INCREMENT,
username varchar(30) NOT NULL,
password varchar(50) NOT NULL,
email varchar(50) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

权限表设计示例:

CREATE TABLE permission (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(50) NOT NULL,
description varchar(100) DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

为了实现权限管理,在用户表和角色表中需增加权限ID的外键。

用户表设计示例:

CREATE TABLE user (
id int(11) NOT NULL AUTO_INCREMENT,
username varchar(30) NOT NULL,
password varchar(50) NOT NULL,
email varchar(50) NOT NULL,
permission_id int(11) DEFAULT NULL,
PRIMARY KEY (id),
KEY permission_id (permission_id),
CONSTRAINT user_permission_fk FOREIGN KEY (permission_id) REFERENCES permission (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

角色表设计示例:

CREATE TABLE role (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(50) NOT NULL,
permission_id int(11) NOT NULL,
PRIMARY KEY (id),
KEY permission_id (permission_id),
CONSTRAINT role_permission_fk FOREIGN KEY (permission_id) REFERENCES permission (id id int(11) NOT NULL AUTO_INCREMENT,
username varchar(30) NON NULL,

mot de passe varchar(50) NON NULL,

email varchar(50) NON NULL,

CLÉ PRIMAIRE (id)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Exemple de conception de table d'autorisation :

CREATE TABLE permission (

id int(11) NOT NULL AUTO_INCREMENT,

nom varchar(50) NOT NULL,

description varchar(100) DEFAULT NULL,

PRIMARY KEY (id)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;

Afin de mettre en œuvre la gestion des autorisations, les clés étrangères pour les ID d'autorisation doivent être ajoutées à la table des utilisateurs et à la table des rôles.

Exemple de conception de table utilisateur :

CREATE TABLE user (

id int(11) NOT NULL AUTO_INCREMENT,

username varchar(30) NON NULL,

mot de passe varchar(50) NON NULL,

email varchar(50) NON NULL,

permission_id int(11) DEFAULT NULL ,

CLÉ PRIMAIRE (id),🎜 CLÉ permission_id (permission_id),🎜 CONTRAINTE user_permission_fk CLÉ ÉTRANGÈRE (permission_id) RÉFÉRENCES permission (id)🎜) ENGINE=InnoDB DEFAULT CHARSET=utf8;🎜🎜Exemple de conception de table de caractères : 🎜🎜CREATE TABLE role (🎜 id int(11) NON NULL AUTO_INCREMENT,🎜 name varchar(50) NON NULL,🎜 permission_id int (11) NON NULL,🎜 CLÉ PRIMAIRE (id),🎜 CLÉ permission_id (permission_id),🎜 CONTRAINTE role_permission_fk CLÉ ÉTRANGÈRE (permission_id) RÉFÉRENCES permission (id)🎜) ENGINE=InnoDB DEFAULT CHARSET=utf8;🎜🎜2. 🎜Dans le système du centre commercial, différents rôles ont des autorisations différentes. Par exemple, les administrateurs ont le pouvoir de gérer les utilisateurs, les produits et les commandes, tandis que les utilisateurs ordinaires ne peuvent acheter que des produits. Par conséquent, différentes autorisations doivent être définies et attribuées à différents rôles. 🎜🎜Dans le tableau des autorisations, vous pouvez définir le nom et la description de l'autorisation. Dans la table des rôles, vous pouvez spécifier le nom du rôle et les autorisations correspondantes. 🎜🎜3. Construire un système administrateur 🎜🎜 Ensuite, prenez le système administrateur comme exemple pour présenter comment implémenter la fonction de création d'un système administrateur. 🎜🎜Tout d'abord, nous devons créer un formulaire de connexion pour la connexion administrateur : 🎜
<form action="admin-login.php" method="post">
  <input type="text" name="username" placeholder="用户名">
  <input type="password" name="password" placeholder="密码">
  <input type="submit" value="登录">
</form>
🎜Dans le fichier admin-login.php, vérifiez le nom d'utilisateur et le mot de passe de l'administrateur et vérifiez ses autorisations. Si la connexion réussit, les informations de l'administrateur peuvent être stockées dans la session pour une vérification ultérieure des autorisations. 🎜
<?php
// 检查用户名和密码
$username = $_POST['username'];
$password = $_POST['password'];

// 在数据库中查询管理员信息
// 省略代码

// 验证密码
// 省略代码

// 检查权限
$permissionId = $admin['permission_id'];
// 在数据库中查询权限信息
// 省略代码

// 将管理员信息存储在session中
// 省略代码

// 跳转到管理员首页
header("Location: admin-index.php");
🎜Dans la page d'accueil de l'administrateur (admin-index.php), les fonctions de gestion correspondantes peuvent être affichées en fonction des autorisations de l'administrateur, telles que la gestion des utilisateurs, la gestion des produits et la gestion des commandes. 🎜
<?php
session_start();
if (isset($_SESSION['admin'])) {
  $admin = $_SESSION['admin'];
  $permissionId = $admin['permission_id'];
  
  // 根据权限显示相应的管理功能
  if ($permissionId == 1) {
    // 显示用户管理功能
    echo "用户管理";
  } elseif ($permissionId == 2) {
    // 显示商品管理功能
    echo "商品管理";
  } elseif ($permissionId == 3) {
    // 显示订单管理功能
    echo "订单管理";
  }
} else {
  // 未登录跳转到登录页
  header("Location: admin-login.php");
}
🎜Dans le code ci-dessus, les fonctions de gestion des utilisateurs, de gestion des produits et de gestion des commandes sont affichées respectivement en fonction de l'ID d'autorisation de l'administrateur. Les fonctions peuvent être affichées et étendues en fonction des besoins réels. 🎜🎜Grâce aux étapes ci-dessus, nous pouvons créer un système de base de gestion des autorisations et d'administration. Selon les besoins réels, d'autres fonctions peuvent également être étendues, comme la gestion des rôles, l'attribution des autorisations, etc. 🎜🎜Résumé🎜🎜Cet article présente comment utiliser PHP pour développer des fonctions urbaines et créer des systèmes de gestion des autorisations et d'administration. En concevant la structure de la base de données, en définissant les autorisations et les rôles, la connexion de l'administrateur et la vérification des autorisations sont implémentées. Dans le système administrateur, différentes fonctions de gestion sont affichées en fonction de l'ID d'autorisation. Ces fonctions peuvent être modifiées et étendues en fonction des besoins réels pour répondre aux exigences du système du centre commercial. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn