Всем привет! Отправляю форму через ajax и требуется проверить данные, правильно ли я все делаю? Код упростил немножко (до одного поля) чтобы показать.
<?php
class RequestForm{
public $fields_err = array();
private $return_fields = array();
function ErrField($field, $text){
$this->fields_err[$field][] = $text;
return true;
}
function GetErrors(){
foreach($this->fields_err as $key => $val){
$this->return_fields[$key][] = implode('<br>', $val);
}
return json_encode(array(
'status' => 'err',
'fields' => $this->return_fields,
));
}
}
parse_str($_POST['data'], $data);
$req = new RequestForm;
/* проверяю поле title */
if(isset($data['title'])){
$title = clear($data['title']); // очищаю от лишнего
if(!empty($title)){ // проверяю не пусто ли после очистки
if(!vLength($title, 5, 130)) $req->ErrField('title', 'Количество символов должно быть в пределах 5-130');
}else $req->ErrField('title', 'Не верно заполнено поле "Название"');
}else $req->ErrField('title', 'Не заполнено поле "Название"');
/*======================*/
if(count($req->fields_err) > 0){ // перед загрузкой в базу проверяю были ли ошибки в полях
echo $req->GetErrors(); // вывожу ошибки и останавливаю скрипт
exit;
}
// если ошибок небыло, то скрипт продолжается и дальше чистые данные пишу в базу и т.д. и т.п.
?>