Сегодня уже не очень актуально проверять все поля формы вручную на сервере. Пример как того мы это делали раньше
<?php if(!isset($_POST['phone'])) exit('Введите телефон');
А теперь пример как это делается сейчас. Будем юзать класс разработчика с ником Wixel, который называется GUMP. Этот класс занимается валидацией данных. Простейший пример приведенный в документации
require "gump.class.php"; $is_valid = GUMP::is_valid($_POST, array( 'username' => 'required|alpha_numeric', 'password' => 'required|max_len,100|min_len,6' )); if($is_valid === true) { // continue } else { print_r($is_valid); }
В коде видим, что первым делом подключаем сей класс. Скачать и ознакомиться с доками можно здесь
в статическом методе is_valid мы добавляем правила, которые будут проходить поля username и password. Видим что юзернейм обязательное поле, которое включает буквы И цифры. Можно создать собственное правило валдиации используя следующий метод
require "gump.class.php"; GUMP::add_validator("is_object", function($field, $input, $param = NULL) { return is_object($input[$field]); }); $is_valid = GUMP::is_valid($_POST, array( 'username' => 'required|alpha_numeric|is_object', 'password' => 'required|max_len,100|min_len,6' ));
Создали правило is_object, которое подвесили на поле юзернейм.
Пример кастомных(своих) ошибкок.
$_POST = $validator->filter($_POST, $filters); $validated = $validator->validate($_POST, $rules); if ($validated === TRUE) { echo "Successful Validation\n\n"; } else { foreach ($validated as $v) { switch ($v['field']) { case 'credit_card': echo "- The credit card provided is not valid.\n"; break; case 'username': echo "- The username provided is not valid.\n"; break; } } }
Ну воть. Теперь вы крутой и знаете как валидировать данные в 2к16.