空白字段错误,虽然它在cakephp中有值

时间:2015-01-01 08:36:50

标签: php cakephp

当我尝试保存名为$data的变量时,出现以下错误(使用var_dump打印):

array(2) {
  ["start_date"]=>
  array(1) {
    [0]=>
    string(31) "This field cannot be left blank"
  }
  ["end_date"]=>
  array(1) {
    [0]=>
    string(31) "This field cannot be left blank"
  }
}

但这是我的$data(也使用var_dump打印):

array(5) {
  ["name"]=>
  string(4) "ASDF"
  ["start_date"]=>
  string(11) "1393/007/25"
  ["end_date"]=>
  string(11) "1393/007/28"
  ["category"]=>
  string(3) "ADF"
  ["awards"]=>
  string(4) "DASF"
}

(我的模型中有一些验证规则)

我做错了什么?!

更新 以下是我的验证规则:

var $validate = array(
        'name'=>'notEmpty',
        'start_date'=>array(
            'rule'=>'/^([1]{1})([0-9]{3})([\/]{1})([0-9]{2})([\/]{1})[0-9]{2}$/'
        ),
        'end_date'=>array(
            'rule'=>'/^([1]{1})([0-9]{3})([\/]{1})([0-9]{2})([\/]{1})[0-9]{2}$/'
        ),
    );

1 个答案:

答案 0 :(得分:1)

在您的日期,月份部分您有3位数

[0-9]{2}更改为[0-9]{3}

您的最终正则表达式应该从

更改
'rule'=>'/^([1]{1})([0-9]{3})([\/]{1})([0-9]{2})([\/]{1})[0-9]{2}$/'

'rule'=>'/^[1]{1}[0-9]{3}[\/]{1}[0-9]{3}[\/]{1}[0-9]{2}$/'

无论如何,你为什么要把3个数字传到月份?