我使用以下代码验证我的字段 如果该数字大于10,则显示验证消息。
less_than[10]
现在如果有人输入10,那么验证信息也会显示 我需要在codeIgniter中使用小于或等于10的代码。
提前致谢。
答案 0 :(得分:4)
只需使用less_than [11] 它的工作方式可能小于或等于10 ..
答案 1 :(得分:2)
在控制器中创建自己的自定义回调函数,以维护表单验证规则并调用form_validation
类:
public function index()
{
//...form stuff
$this->form_validation->set_rules('number', 'Number', 'callback_less_than_or_equal[10]');
//...form stuff
}
public function less_than_or_equal($str, $max)
{
if ( ! is_numeric($str))
{
return FALSE;
}
return $str <= $max;
}
答案 2 :(得分:2)
您可以向控制器添加回调,但我认为这不是最佳解决方案,因为less_equals
是一个非常常见的规则。
callback_
。我对此问题的解决方案(以及其他常见规则,如is_date
)正在扩展表单验证库,如下所示:
创建application/libraries/MY_form_validation.php
class MY_Form_validation extends CI_Form_validation
{
public function less_equals($str, $min)
{
if ( ! is_numeric($str)) return FALSE;
return $str <= $min;
}
//other rules here...
}
使用system/languaje/english/form_validation_lang.php
的相应错误消息更新less_equals
,您就完成了!现在它的工作方式与任何其他Codeigniter默认验证规则相同。
希望它有所帮助!
答案 3 :(得分:0)
您可以使用less_than_equal_to[10]
。