为什么我的alphaNumeric验证规则不能在我的CakePHP模型中运行?

时间:2013-01-19 05:36:01

标签: php cakephp

我已经尝试过以下对我的字段的验证。

我的字段是标题,内容。

var $validate = array('title' =>array('alphaNumeric'=>array('rule'=>'alphaNumeric','required'=>'true','message'=>'Enter a title for this post',)),
                     'content'=>array('alphaNumeric'=>array('rule'=>'alphaNumeric','required'=>'true','message'=>'Enter some content for this post',)));

但每当我在表单中输入一些文字并尝试提交时,都会显示错误消息......

验证有问题吗?

这是我的表格

<h2> Add a Post Here </h2>
Please fill in all the fields.
<?php
echo $this->form->create('Post');
echo $this->form->error('Post.title');
echo $this->form- >input('Post.title',array('id'=>'posttitle','label'=>'title','size'=>'50','maxlength'=>'255','error'=>false));
echo $this->form->error('Post.content');
echo $this->form->input('Post.content',array('id'=>'postcontent','type'=>'textarea','label'=>'Content:','rows'=>'10','error'=>false));
echo $this->form->end(array('label'=>'Submit Post'));
?>

2 个答案:

答案 0 :(得分:2)

您可以使用自定义正则表达式。

'rule'    => array('custom', '[a-zA-Z0-9, ]+'),

答案 1 :(得分:0)

我必须按如下方式更改正则表达式才能使其正常工作。

        'alphaNumeric' => array(
            'rule' => array('custom', '/[a-zA-Z0-9, ]+/'),
            'message' => 'Only letters and numbers allowed',

为什么内置alphaNumeric规则不会这样做?