zend helper Db_NoRecordExists用于多表检查

时间:2012-10-15 05:20:31

标签: zend-framework zend-form

我想检查我的两个表中的手机号码唯一性..我已经添加了这个代码,但它仅检查第二个...是否有任何其他方式在表单中验证这个...

$this->addElement('text', 'mobilenumber', array(`enter code here`
            'filters'    => array('StringTrim'),
            'validators' => array`enter code here`(
                                array('Db_NoRecordExists', true, array('table' => 'beroe_user', 'field' => 'mobilenumber', 'messages' => array(
                                   'recordFound' => 'mobilenumber already exists'
                                ))),
                                array('Db_NoRecordExists', true, array('table' => 'beroe_user', 'field' => 'mobilenumber', 'messages' => array(
                                   'recordFound' => 'admin already exists'
                                ))),
            ),
            // 'required'   => true,
            'label'      => 'Phone ',
            'maxlength'  => '15'
        ));

1 个答案:

答案 0 :(得分:2)

我认为这是因为当我们多次向元素添加相同的验证器时,前者将被覆盖。检查类Zend_Form_Element,addValidator()第1153行 您可以根据需要创建自定义验证器。这将是最好的事情。