php – 如何使用Zend Framework 2验证乘法选择
发布时间:2020-05-25 09:02:08 所属栏目:PHP 来源:互联网
导读:我试图使用输入过滤器验证乘法选择,但每次看到错误.错误是“notInArray”:“在大海捞针中找不到输入”.(我使用ajax,但它并不是完美的). 我将更清楚地展示我的部分代码. 在控制器中: if ($request-isPost()) { $post = $request-getPost(); $form = new Sett
|
我试图使用输入过滤器验证乘法选择,但每次看到错误.错误是“notInArray”:“在大海捞针中找不到输入”.(我使用ajax,但它并不是完美的).
在控制器中: if ($request->isPost()) {
$post = $request->getPost();
$form = new SettingsFormAddUserForm($roles);//
$form->get('positions')
->setOptions(
array('value_options'=> $post['positions']));
// ….更多代码…… 当我把print_r($post [‘positions’]);我知道了: in …. / form / UserForm.php我创建了multiply元素 $this->add(array(
'type' => 'ZendFormElementSelect','attributes' => array(
'multiple' => 'multiple','id' => 'choosed_positions',),'required' => false,'name' => 'positions',));
在验证文件中,代码是: $inputFilter->add($factory->createInput(array(
'name' => 'positions','validators' => array(
array(
'name' => 'InArray','options' => array(
'haystack' => array(118,119),'messages' => array(
'notInArray' => 'Please select your position !'
),
每次看到这个错误的原因是什么,以及我如何解决它? 默认情况下,选择在Zend Framework 2中附加了InArray验证器.如果你要添加新的 – 你将有两个. 您应该禁用默认值,如下所示: $this->add(array(
'type' => 'ZendFormElementSelect','options' => array(
'disable_inarray_validator' => true,// <-- disable
),'attributes' => array(
'multiple' => 'multiple',));
你应该摆脱额外的错误信息.如果这对您有所帮助,请告诉我们. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读
