ホームページ > バックエンド開発 > PHPチュートリアル > PHPデベロッパーシティ機能の使い方:権限管理・管理者システムの構築

PHPデベロッパーシティ機能の使い方:権限管理・管理者システムの構築

WBOY
リリース: 2023-07-29 17:34:01
オリジナル
1294 人が閲覧しました

PHP 開発者モール機能の使い方: 権限管理と管理者システムの構築

インターネットの発展に伴い、オンライン モールは多くの企業や個人起業家に選ばれるようになりました。モールシステムを開発する場合、権限管理や管理者システムは非常に重要な機能の一つです。この記事では、PHPを使用して都市機能を開発し、権限管理や管理者システムを構築する方法を紹介します。

1. データベース設計

開発を始める前に、まずデータベース構造を設計する必要があります。モールシステムで一般的に使用されるテーブルには、ユーザーテーブル、商品テーブル、注文テーブルなどがあります。権限管理と管理者システムを実現する前提として、管理者テーブルと権限テーブルも追加する必要があります。

管理テーブルの設計例:

CREATE TABLE admin (
id int(11) NOT NULL AUTO_INCREMENT,
ユーザー名 varchar(30) NOT NULL,
パスワード varchar(50) NOT NULL,
email varchar(50) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Permission テーブルの設計例:

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,
ユーザー名 varchar(30) NOT NULL,
パスワード varchar(50) NOT NULL,
email varchar(50) NOT NULL,
permission_id int(11) デフォルト NULL,
主キー (id),
キー permission_id (permission_id),
制約 user_permission_fk 外部キー (permission_id) 参照 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,
主キー (id),
KEY permission_id (permission_id),
制約 role_permission_fk 外部キー (permission_id) 参照 permission (id )
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

2. 権限管理の概念

モール システムでは、異なる役割が異なる権限を持ちます。たとえば、管理者はユーザー、製品、注文を管理する権限を持ちますが、一般ユーザーは製品の購入のみが可能です。したがって、異なる権限を定義し、異なる役割に割り当てる必要があります。

権限テーブルでは、権限の名前と説明を設定できます。ロール テーブルでは、ロールの名前と対応する権限を指定できます。

3. 管理者システムの構築

次に、管理者システムを例に、管理者システムの構築機能の実装方法を紹介します。

まず、管理者ログイン用のログイン フォームを作成する必要があります。

<form action="admin-login.php" method="post">
  <input type="text" name="username" placeholder="用户名">
  <input type="password" name="password" placeholder="密码">
  <input type="submit" value="登录">
</form>
ログイン後にコピー

admin-login.php ファイルで、管理者のユーザー名とパスワードを確認し、その権限を確認します。ログインが成功すると、その後の権限検証のために管理者の情報をセッションに保存できます。

<?php
// 检查用户名和密码
$username = $_POST['username'];
$password = $_POST['password'];

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

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

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

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

// 跳转到管理员首页
header("Location: admin-index.php");
ログイン後にコピー

管理者ホームページ(admin-index.php)では、管理者の権限に応じてユーザー管理、商品管理、注文管理などの管理機能を表示することができます。

<?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");
}
ログイン後にコピー

上記のコードでは、管理者の権限IDに応じて、ユーザー管理、商品管理、注文管理の機能がそれぞれ表示されます。実際のニーズに応じて機能を表示および拡張できます。

上記の手順により、基本的な権限管理および管理者システムを構築できます。実際のニーズに応じて、役割管理、権限の割り当てなど、他の機能も拡張できます。

概要

この記事では、PHP を使用して都市機能を開発し、権限管理および管理者システムを構築する方法を紹介します。データベース構造を設計し、権限とロールを定義することにより、管理者のログインと権限の検証が実装されます。管理者システムでは、権限IDに応じて異なる管理機能が表示されます。これらの機能は、実際のニーズに応じて変更および拡張し、モール システムの要件を満たすことができます。

以上がPHPデベロッパーシティ機能の使い方:権限管理・管理者システムの構築の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート