Php CodeIgniter:在提交无效表单后,如何保留值?

Php CodeIgniter:在提交无效表单后,如何保留值?,php,forms,codeigniter,session,Php,Forms,Codeigniter,Session,我在谷歌上搜索过,PHP本身有很多方法可以做到这一点,JavaScript/jQuery/AJAX和CodeIgniter会话数据/flash数据 但我更喜欢在PHP中实现这一点。我的表单非常大,包含不同的元素,如文本输入、下拉列表、收音机等。不过,我在视图(MVC)中的输入上尝试了以下内容 例如: < input type="radio" name "gender" value="Male" <?php echo ($gender == 'Male')? 'checked': ''

我在谷歌上搜索过,PHP本身有很多方法可以做到这一点,JavaScript/jQuery/AJAX和CodeIgniter会话数据/flash数据

但我更喜欢在PHP中实现这一点。我的表单非常大,包含不同的元素,如文本输入、下拉列表、收音机等。不过,我在视图(MVC)中的输入上尝试了以下内容

例如:

< input type="radio" name "gender" value="Male" <?php echo ($gender == 'Male')? 'checked': ''; ? />
< input type="radio" name "gender" value="Female" <?php echo ($gender == 'Female')? 'checked': ''; ? />


(isset($gender)和&$gender=='Male'))


另请阅读将post数据添加到视图数据 警告:根据您的问题和代码,这是一种肮脏而懒惰的方法:

例如:

在您提交的控制器上:

function submit(){
 $data->post = $this->input->post();
 $this->load->view('view', $data);
}
在视图上添加以下内容:

extract($post);

codeigniter已设置_值,您只需在其中键入输入名称,如示例blow。 如果验证为false,则只保留您之前输入的值。 例如:


您可以通过执行(isset($gender)&&&$gender=='Male')来消除错误?etcI不知道为什么要学习php,因为php是如此的强大leaky@NullPoi因为我现在必须在厄瓜多尔找份工作。谢谢。但正如上面“allen213”所指出的,还有更懒惰的方法来实现这一点。这就是CodeIgniter的:set_value()、set_select()、set_checkbox()、set_radio()函数。否则,使用框架将毫无意义,对吗?:)
 <input type='text' name='last_name' id='last_name' value="<?=set_value('last_name')?>" />