をロードコントローラUser
における機能は、例えば、登録フォームをロード:CodeIgniterのビューを
public function signup()
{
$this->load->view('form_view');
}
だから登録フォームURLはroot/user/signup
ようになる(のindex.phpを無視する)
form_view
はAは同じコントローラー内の別のメソッドに提出されるフォームは、process()
となります。フォームが送信されると
<? echo form_open('user/process') ?>
は、それは検証コードが含まれているuser/process
、に行きます。検証エラーがある場合は、form_view
を再度ロードし、エラーデータを渡してフォームに表示します。
if ($this -> form_validation -> run() === FALSE)
{
//$this -> load -> vars($data);
$this -> load -> view('form_view');
}
すべて正常です。フォームをURL user/process
に提出し、form_view
がありましたので
root/user/signup
root/user/process
に:しかし、今user/process
機能からロードされているのと同じform_view
いるので、フォームのURLが変更されますから、 process()
から呼び出されています。エラーが発生した場合にform_view
がプロセス機能からロードされたときに、何らかの形で元のフォームURL(root/user/signup
)をリダイレクトまたは維持できますか?
ありがとうございました。
は、私は、POS、元のURLを維持しませんが、これは、CIのドキュメントにメソッドを使用したいですあなたのコントローラ内の別のメソッドに移動してください。http://codeigniter.com/user_guide/libraries/form_validation.html#thecontroller –