julia 发表于 2010-12-3 13:08:44

表单验证后返回当前表单的新输入值丢失?

———————controller
$this->form_validation->set_rules(...);
if ($this->form_validation->run() == FALSE){
echo “alert(’ “.’ input error please redo ‘.”’);history.go(-1);” ;

/* 如果执行上面的提示并返回
当前表单保持了新输入值,
在view 中不显示输入的错误 validation_errors() ?
*/

/* 如果不执行上面的提示
当前表单丢失了新输入值?
在view 中显示输入的错误 validation_errors()
*/

}
———————view
<?php echo validation_errors() ; ?>

<?php echo form_input($value['title']); ?> <?php echo form_error('title'); ?>

...edit form
//其中$value['title'] = array('type'=>'input', 'size'=>30,'value'=>$value['title'],'name'=>'title')

———————如何获得 ?
1, 显示 validation_errors()
2, 表单保持新输入的值

------------------如果唯一的出路是 set_value('title'),请问如何加在下面的表达式中?
$value['title'] = array('type'=>'input', 'size'=>30,'value'=>$value['title'],'name'=>'title')

visvoy 发表于 2010-12-4 17:35:37

1. echo validation_errors()
2. <input value="<?php echo set_value('name值')?> "

julia 发表于 2010-12-5 08:15:25

谢谢 visvoy
如何将set_value('title') 加入下面的表达式。为了某些判断,大部分input采用先面的表达式
$value['title'] = array('type'=>'input', 'size'=>30,'value'=>$value['title'],'name'=>'title')

julia 发表于 2010-12-8 13:21:54

答案
$value['title'] = array('type'=>'input', 'size'=>30,'value'=>set_value('title',$value['title']),'name'=>'title')

jeongee 发表于 2010-12-8 14:50:35

呵呵,这中问题最近问了好多啊
页: [1]
查看完整版本: 表单验证后返回当前表单的新输入值丢失?