私はログインフォームをナビゲーション(テンプレート)に入れて、すべてのページに表示させたいと思っています。 と、他のページに行くことなくデータベースのユーザー名とパスワードを確認します。失敗した場合、ナビにエラーが表示され、成功した場合は、特定のコモロメーションでページが再度読み込まれます。コードと詳細を教えてください。codeigniter動的テンプレートを作成する
私は、テンプレート内のこれらの部分があります。
- ヘッダを
- NAV
は、私はこれを実行したい、現在のコントローラに追加されますフッター
$this->load->view('templates/header');
$this->load->view('templates/nav');
$this->load->view('related_view');
$this->load->view('templates/footer');
ナビゲーションにはログインフォームが含まれている必要があります。ログインフォームは送信して別のページに移動しません。
私の質問はどこにログインコントローラとモデルを配置するのですか? ci_controllerとci_modelを拡張した別のクラスですか?もしそうなら、現在のコントローラにそれらを含めるにはどうすればいいですか?あなたが知っている、例えば、これは私のニュースコントローラであり、私はこれらのテンプレートビューをこのコントローラにロードします。ログインフォームにはaction = ""があるので、現在のページにデータを投稿します。ログインコントローラとモデルは、現在のコントローラ(ニュースコントローラ)でログインチェックを処理するために何らかの方法でアクセスできる必要があります。答えのためのthx! – Aliweb
なぜすべてのURIでログインを処理したいのですか?なぜあなたはログインフォームを持っていない*常に*同じコントローラのアクションを指しています。そうすれば、毎回のログイン時にデータを不必要にチェックする必要はありません。 – landons
よく私はそれを必要とします。私の質問は一般的なものであり、ダイナミックなテンプレート(ここではナビゲーション)に関することです。ログインフォームは単なる例です。たとえば、ナビゲーションに何かランダムなニュースを表示したい、または静的なテキストだけでなく動的なものを表示したいとします($ this-> load-> view()は機能しません)。あなたは動的なアクションがコントローラと多分モデルを必要とすることを知っている。私の質問は、メインのコントローラの内部でこれらのコントローラとモデルを扱う方法です – Aliweb