1

私はCodeigniterフレームワークを使用しており、登録フォームを作成中です。登録プロセスは複数のステップで完了します-私はさまざまなビューを作成しました。

私が問題にしているのは、新しいステップに進んだことをコントローラーに読み取らせることです。フォームをに投稿してこれを解決しようとしましindex.php/controller/2たが、ページに到達すると、404エラーが表示されます。

ページが存在しません。

URIヘルパーをロードしたので、問題がどこにあるのかよくわかりません。

すべての助けは非常に高く評価されています

4

1 に答える 1

3

フォームを送信することで、index.php/controller/2効果的に言っている

  • /application/controllers/Controller.phpをロードします
  • クラスコントローラーのインスタンス化
  • Controller :: 2()を実行します

2という名前のメソッドがなく、ステップ1を処理するメソッドの引数として2を渡したいと思います。これは/controller/register類似している可能性があります。

フォームを送信して、使用しているステップを確認する必要がindex.php/controller/method/2ありmethodます$this->uri->segment(2)

理想的には、ロジックをより適切に分離できるため、ステップごとに異なるメソッドを作成します。例えば

class Registration {
    function step_1() {}
    function step_2() {}
}

index.php/registration/step_1/これにより、index.php/registration/step_2/たとえば電話をかけることができます。

また、Sessionクラスを使用して、完了したステージを示す変数を設定し、URLを入力して他のステージにスキップしないようにすることもできます。

于 2011-12-19T16:19:54.237 に答える