2012-04-25 16 views
1

私はphp-html-mysqlで設計されたウェブサイトを持っています。ユーザーログインシステムがあります。ユーザーのユーザータイプである3簡単なログインシステムPHPで

  1. 管理
  2. ユーザー
  3. 訪問者

この3タイプは、ページ内のアクセスの異なる種類があります。メニュー項目が異なります。管理者はいくつかの情報を編集、削除、更新できますが、無料のユーザーはできません。

私はページを作成しました。どのページでどのようにアクセスを変えることができますか?つまり、すべてのページにメニューを読み込む必要があります。管理者の場合、メニュー項目はユーザーではなく、訪問者によって異なります。

私はSESSIONを使用しようとしていますが、これを使用する方法がわかりません。私のシナリオにどのように応募できますか?

+0

ユーザーデータを格納するデータベースにアクセスできますか? (例えば、MYSQLデータベースはこの種のものでは非常に一般的です) –

+3

http://stackoverflow.com/questions/4265336/creating-user-roles – Shoban

+0

@BenjaminGruenbaum yesのような既存の質問はほとんどチェックしないでください。私はmysqlデータベースを持っており、ログインはdbによって管理されています。ログイン後、どのように私は誰がユーザー(管理者/ユーザー/訪問者)であることを覚えていますか? –

答えて

0

これまでのページでユーザーを確認します。ですから、个人设定スクリプトを持っている場合は、一番上にそれをチェック:あなたはdidnのため

<?php 

if ($_SESSION['user']['user_type'] != 'admin') { 
    die('You do not have permission to view this page.'); 
} 

// continue showing edit form 

を私はあなたのセッションの構造やユーザーを格納しているデータベース構造のセットアップを知りませんそれらを提供するわけではないので、これは私が提供するもの、または誰でも提供できるものです。

0

ユーザテーブルのデータベースに "user_level"または0または1の可能な値を持つ別のフィールドを作成する必要があります...ユーザのレベルが0の場合はユーザは単純ユーザ、そうでない場合は1、ユーザは管理者 ユーザーログイン時に、 'user_level'フィールドから 'user_level'セッションを保存します。すべてのページのチェックの後

は:

<? 
if($_SESSION['user_level'] == 1) { display_menu_for_admin(); } 
?> 
0

あなたは最初のアクセスレベルを作成する必要があります。 まず、セッション、メニューを扱うために別々のファイルを作成してください。 ファイルへのアクセスを決定するクラスを作成します。 すべてのページで、このクラス関数を呼び出すと、アクセスレベルが終了します。

たとえば、メニュー項目を処理するためのファイルを作成します。 アクセスレベルによってファイルが完全に異なる場合は、ファイルを切り替えます。 また、メニューにわずかな変更がある場合は、else条件を追加してください。 こうすれば、メニューシステムが簡単になります。 これを他のサイトの機能に適用します。例えばMangeサイト変数など。アクセスは管理ユーザーにのみ与えられます。

関連する問題