Forms 优化codeigniter set_值和数据库中的值

Forms 优化codeigniter set_值和数据库中的值,forms,codeigniter,validation,optimization,Forms,Codeigniter,Validation,Optimization,此处提供的目标和解决方案是,如果表单已提交,则在Codeigniter中的“编辑用户页面”上输入表单,以通过set_value()返回验证值,如果数据库中有值,则在初始加载时填充字段 我只是想知道是否有更好的方法来优化这么长的if-else,因为我开始发现我的页面上塞满了很多相同的代码,这是违反DRY原则的迹象 因此,这基本上是在页面加载/重新加载时进行的,第一优先级始终是检查set_值是否存在,如果存在,这意味着表单已提交,但不知何故存在错误,因此我们需要显示已提交的值。否则,我们从填充中检查

此处提供的目标和解决方案是,如果表单已提交,则在Codeigniter中的“编辑用户页面”上输入表单,以通过set_value()返回验证值,如果数据库中有值,则在初始加载时填充字段

我只是想知道是否有更好的方法来优化这么长的if-else,因为我开始发现我的页面上塞满了很多相同的代码,这是违反DRY原则的迹象

因此,这基本上是在页面加载/重新加载时进行的,第一优先级始终是检查set_值是否存在,如果存在,这意味着表单已提交,但不知何故存在错误,因此我们需要显示已提交的值。否则,我们从填充中检查输入值是否存在,如果存在,则显示它,否则显示空白输入

<input type="text" name="fav_brands" value="<?=(set_value('fav_brands') ? set_value('fav_brands') : ($user_meta['fav_brands'] ? $user_meta['fav_brands'] : ''));?>"/>

set_value在编辑时使用第二个参数填充默认值,set_value('fieldName',$fieldName);,请不要使用短手回音,这是一个很糟糕的练习。不回答你的问题,但是你也需要考虑如何在表格中显示POST数据,如果验证失败了:谢谢,不能相信我完全忘记了可选的参数。