加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 是否可以使用或在codeigniter表单验证?

发布时间:2020-12-13 17:11:48 所属栏目:PHP教程 来源:网络整理
导读:我有一个输入,可以是十进制或数字.我想使用这个规则: $this-form_validation-set_rules('price','Price','decimal|numeric'); 但我认为form_validation帮助器中的规则不能使用“或”语句.如果价格是“149.99”那么它是有效的,但如果价格是“150”则不是. 我
我有一个输入,可以是十进制或数字.我想使用这个规则:

$this->form_validation->set_rules('price','Price','decimal|numeric');

但我认为form_validation帮助器中的规则不能使用“或”语句.如果价格是“149.99”那么它是有效的,但如果价格是“150”则不是.

我错过了什么或不可能使用这样的东西:

$this->form_validation->set_rules('price','decimal or numeric');

解决方法

CI,在验证时不允许混合数据类型.而是,创建自定义验证规则.

声明这样的规则

$this->form_validation->set_rules('price','callback_decimal_numeric');

在控制器上创建方法后

public function decimal_numeric($str)
    {
        if ($str <isdecimal&nummeric>) //Use your logic to check here
        {
            $this->form_validation->set_message('decimal_numeric','The %s field validation has failed');
            return FALSE;
        }
        else
        {
            return TRUE;
        }
    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读