我需要curl_setopt($ch, CURLOPT_VERBOSE, 1);
以下validate
,我放在dates
database
中。如果datetime form
为check
并且它有效,我name
之前我会empty
,但它不适用于日期:
function validation($data, $files) {
$errors= array();
if (empty($data['name'])){
$errors['name'] = get_string('error:name', 'carhire');
}
return $errors;
//Here the dates won't work:
if ($data['datefrom'] < $data['dateuntil']) {
$errors['dateuntil'] = 'ERROR';
}
return $errors;
}
我缺少什么?谢谢您的帮助。
答案 0 :(得分:1)
如果您执行上面显示的功能,它将无法正常工作,因为您在结束日期之前可以通过&#34;验证&#34;。
删除第一个return $errors;
function validation($data, $files) {
$errors= array();
if (empty($data['name'])){
$errors['name'] = get_string('error:name', 'carhire');
}
return $errors; // <--- this will exit the function
//Here the dates won't work:
if ($data['datefrom'] < $data['dateuntil']) {
$errors['dateuntil'] = 'ERROR';
}
return $errors;
}
由于这不是解决方案,我有另一个输入。 (需要php 5.2 +)
function validation($data, $files) {
$errors= array();
if (empty($data['name'])){
$errors['name'] = get_string('error:name', 'carhire');
}
//Here the dates won't work:
$date_from = new DateTime($data['datefrom']); // example 2016-01-18 08:55:00
$date_until = new DateTime($data['dateuntil']); // example 2016-01-19 08:55:00
if ($date_from < $date_until) {
$errors['dateuntil'] = 'ERROR';
}
return $errors;
}
我用评论中陈述的值测试了它,它对我有用(我收到了错误消息)。 如果它不起作用,请确保在数组中正确设置日期值。