1

私はCodeIgniterでアプリケーションを作成していますが、2つのアプリケーションを作成するのが最善であると結論付けました。1つはバックオフィス用で、もう1つはクライアント用です。

ログイン画面を1つだけにしたいのですが。バックオフィスアプリケーションにありますが、クライアントユーザーがログインした場合は、クライアントアプリにリダイレクトして、そこでセッションを作成します。データベースのユーザーテーブルには、クライアントまたは管理者などのユーザータイプが格納されます。

私は次の解決策を思いついた。私はこれを正しい方法でやりたいので、あなたがたがどう思うかを見るためにあなたたちがそれを実行すると言いました。

  • ユーザーは管理CIアプリにログインします。
  • 管理CIアプリはユーザーを確認し、タイプを決定します。管理者の場合は、先に進んでセッションなどを作成します。
  • ユーザーがクライアントの場合、MD5(user_ip + timestampまたは他の方法で安全なトークンを作成)し、DBのトークンフィールド(user_table)に保存します。
  • ログインページを介してユーザーをクライアント管理者にリダイレクトします。パラメータはトークンとユーザー名になります。次に、ログイン機能はデータベース内のそのユーザーに移動し、トークンを確認します。
  • トークンの承認が成功すると、CIクライアントアプリはセッションを開始し、ユーザーを参加させます。

これは非常に長い方法のようです。理想的には、あるCIアプリのセッションを別のCIアプリから開始する方法はありますか?

何か案は?

ありがとう。

4

3 に答える 3

1

管理者またはクライアントを確認したら、データベースのci_sessionsテーブルでCodeIgniterセッションクラスを使用します。

http://codeigniter.com/user_guide/libraries/sessions.html

次に、ユーザーをクライアントまたは従業員と区別するために、セッションに変数を追加します。

$this->session->set_userdata('user_type', 'client');

次に、必要に応じてそれを使用します。

于 2010-09-02T16:03:26.280 に答える
0

HMVC(Hierarchical-Model-View-Controller)フレームワークで2つのアプリケーションを作成します。

HMVCCodeIgniterチュートリアル

次に、複数のアプリケーションで同じセッションを使用したり、ユーザー管理などに同じモデルを使用したりできます。

HMVCは、アプリケーションのモジュール化を支援します。したがって、将来さらにアプリケーションを追加したい場合は、同じセッションなどを渡すことで、簡単にそれを行うことができます。

私はより広い範囲であなたの質問に答えました。2つのアプリで1つの中央ログインを行うのが最善です。HMVCで行うのが最善です。

:)

于 2010-09-02T17:25:56.467 に答える
0

CodeIgniterのBackEndProをチェックしたいと思うかもしれませんが、多くの時間を節約できます。

含まれるもの:

  • 登録とアカウントアクティベーションによるユーザー認証
  • ACL(アクセス制御リスト)を使用したユーザー権限
  • サイト全体の設定を編集するための管理GUIバックエンド
  • マッチボックス上に構築(モジュラー開発用)
  • アセットライブラリ(JSとCSSの最適化、キャッシュ、ロード)
  • ReCAPTCHA
  • ステータスメッセージ(ユーザーへの情報/成功/警告/エラーメッセージ)
于 2010-09-02T23:13:10.570 に答える