diff --git a/forms/class/forms.php b/forms/class/forms.php index b05ccbe..20b00dd 100644 --- a/forms/class/forms.php +++ b/forms/class/forms.php @@ -614,7 +614,13 @@ function _cleanvar($var) // если передали регулярку elseif ($field['setting'][0] == '/') $valid = preg_match($field['setting'],$fld_val) === 1 ? true : false; // если константу - elseif (defined($field['setting'])) $valid = filter_var($fld_val,constant($field['setting'])) !== false ? true : false; + elseif (isset($field['setting']) && is_string($field['setting']) && defined($field['setting'])) + { + if (is_array($fld_val) && isset($fld_val[0])) { + $fld_val = $fld_val[0]; // Берем первое значение из массива + } + $valid = filter_var($fld_val, constant($field['setting'])) !== false ? true : false; + } // иначе, ничего не делаем else return 'Неверные параметры валидации!'; // парсим теги валидности