2012-04-24 10 views
0

フォームの検証に失敗した場合、フォームの非表示フィールドに再入力する方法が固まっています。CodeIgniterフォーム検証クラスを使用した隠しフィールドの再埋め込み

再作成では、set_value()関数を使用して他のフィールドに選択した値を出力しますが、非表示フィールドでは値フィールドに何かが印刷されています。

<? echo validation_errors();?> 
<? echo form_open('projects/start');?> 
<input type="hidden" name="project_type_id" value="<? echo $this->uri->segment(3);?>" > 
<input type="text" name="site" value="<?echo set_value('site');?>"> 
<input type="submit" value="submit"> 
<?echo form_close();?> 

答えて

0

でURIセグメント値を渡すを維持するために

<? echo form_open('projects/start/' . $this->uri->segment(3));?> 

を行うことが可能であるかもしれない、あなたのサイトを構築しました方法に応じて

<input type="hidden" name="project_type_id" value="<? echo ($this->input->post())? set_value('project_type_id'): $this->uri->segment(3);?>" > 

を働くだろう2番目のパラメータは、送信された値をとるフォームを送信した後、URIセグメント値ではなくサブミットされた値を再投入します。

<?php echo validation_errors(); ?> 
<?php echo form_open('projects/start'); ?> 
<input type="hidden" name="project_type_id" value="<?php echo set_value('project_type_id', $this->uri->segment(3)); ?>" /> 
<input type="text" name="site" value="<?php echo set_value('site'); ?>" /> 
<input type="submit" value="submit" /> 
<?php echo form_close(); ?> 

希望します。ありがとうございました。

+0

これは動作します。ありがとう –

0

あなたはURIセグメントでそれを埋めるためにしたいことをここに推測を取るときに最初にロードし、フォームを送信すると、これが利用できないこと:

は、ここに私のビューのコードです。

おそらくこれは、また、URI

+0

これも機能します。ありがとう –

関連する問題