ホームページ >バックエンド開発 >PHPチュートリアル >この種の Web サイトのユーザー権限制御を実装するにはどうすればよいですか?

この種の Web サイトのユーザー権限制御を実装するにはどうすればよいですか?

WBOY
WBOYオリジナル
2016-06-23 14:11:07976ブラウズ

ウェブサイトのユーザー管理権限について質問してください:
1. すべてのニュース コンテンツは、ウェブサイトのバックエンド データベースのニュース データ テーブルに保存されます。ニュース カテゴリには、「政治」、「政治」などのフィールドがあります。 「エコノミー」、「スポーツ」の3種類。
2. Web サイトのバックエンド管理者には、「政治」、「経済」、「スポーツ」、「スーパー管理者」の 4 つのカテゴリがあります

要件:
1. 各カテゴリの管理者は、対応する種類のニュース コンテンツのみを閲覧および編集できます。 。たとえば、「政治」カテゴリの管理者は、「政治」カテゴリ内のニュースのみを閲覧および編集できますが、他の種類のニュースを閲覧することはできません。
2 「スーパー管理者」はすべてのニュースを閲覧、編集できます

便利かつ合理的にデザインするには?アドバイスをお願いします


ディスカッションへの返信 (解決策)

ニュース テーブルにはユーザー テーブルの削除に対応する削除があり、ユーザーがログインした後、ユーザーの削除を取得してクエリを実行します。ニューステーブル。
スーパー管理者としてログインすると、すべてのニュース レコードをクエリします

カテゴリとユーザー ID の 2 つのフィールドを含む権限テーブルを設定します
その中で:
カテゴリはニュース テーブルのニュース カテゴリ フィールドに対応します
ユーザー ID は権限を持つユーザー ID のリスト。複数の ID はカンマで区切られます
例:
カテゴリ ユーザー ID
政治 0,1
経済 0,2
スポーツ 0,3

0、1、2、および 3 はそれぞれスーパーです管理者、政治管理者、経済管理 メンバーとスポーツ管理者の ID

役割テーブル
id type_ids
1 0,1,2
2 0
3 1
4 2

1 2 3 4 はスーパー管理者、政治管理者、経済管理者、スポーツ管理者のID

0、1、2はそれぞれ政治、経済、スポーツ
ログイン時にtype_idsを取得できます
ニュース表を確認する際に、(type_ids)を入力した表からフィールドを選択します

設定1 対 1 に対応する権限テーブル。各ユーザー ID はタイプ ID に対応します。
利点は、ユーザーまたはタイプの追加または削除が便利であることです。
id_user id_type
--------------------
1 2
1 3
2 4
3 5

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。