Codeigniter 表单验证 - 如何拒绝默认值
Codeigniter form validation - how to reject default values
我有一个设置了默认值的表单,例如:
<input type="text" id="mail" name="mail" value="<?php echo set_value('mail', 'jdoe@example.com'); ?>" />
我使用 Codeigniter 的 form_validation class 验证表单。对于此字段:
$config = array(
array(
'field' => 'user',
'label' => 'Naam',
'rules' => 'trim|required|valid_email'
));
这是我的问题。当用户保持字段不变并提交其默认值 'jdoe@example.com' 时,我想拒绝该值。我知道我可以使用回调,但这意味着我必须为表单的每个字段编写一个回调。不好看!
我查看了验证规则。 'differs' 看起来很有希望,但它只检查一个字段是否与另一个字段不同。
现在在 Codeigniter 中处理默认值的最佳方法是什么?
听起来您应该使用占位符而不是默认值。否则你的要求没有多大意义。
<input type="text" id="mail" name="mail" value="<?php echo set_value('mail'); ?>" placeholder="jdoe@example.com" />
否则您可以尝试内置的验证规则 "in_list" 例如in_list[红、蓝、绿]
$config = array(
array(
'field' => 'user',
'label' => 'Naam',
'rules' => 'trim|required|valid_email|in_list[jdoe@example.com]'
));
编辑:实际上你会想要 in_list 规则的反面,我认为这需要一个回调,但你只需要为每个字段编写一个回调。
我有一个设置了默认值的表单,例如:
<input type="text" id="mail" name="mail" value="<?php echo set_value('mail', 'jdoe@example.com'); ?>" />
我使用 Codeigniter 的 form_validation class 验证表单。对于此字段:
$config = array(
array(
'field' => 'user',
'label' => 'Naam',
'rules' => 'trim|required|valid_email'
));
这是我的问题。当用户保持字段不变并提交其默认值 'jdoe@example.com' 时,我想拒绝该值。我知道我可以使用回调,但这意味着我必须为表单的每个字段编写一个回调。不好看!
我查看了验证规则。 'differs' 看起来很有希望,但它只检查一个字段是否与另一个字段不同。
现在在 Codeigniter 中处理默认值的最佳方法是什么?
听起来您应该使用占位符而不是默认值。否则你的要求没有多大意义。
<input type="text" id="mail" name="mail" value="<?php echo set_value('mail'); ?>" placeholder="jdoe@example.com" />
否则您可以尝试内置的验证规则 "in_list" 例如in_list[红、蓝、绿]
$config = array(
array(
'field' => 'user',
'label' => 'Naam',
'rules' => 'trim|required|valid_email|in_list[jdoe@example.com]'
));
编辑:实际上你会想要 in_list 规则的反面,我认为这需要一个回调,但你只需要为每个字段编写一个回调。