Здравствуйте. Правильно ли я сделал проверку поля
<input type="text" name="name">
?
Проверять надо
$_POST['name']
или сначала обработать
htmlspecialchars()
и
trim()
?
Видел в сети оба варианта, но ведь если обработать сначала с помощью
htmlspecialchars()
то при проверке на длину она будет не корректной.
if (isset($_POST['name']) && !empty($_POST['name'])) {
if ( strlen($_POST['name']) < 2 ) {
$errorValidation['nameShort'] = '<label id="name-error" class="error" for="name">Имя не должно содержать меньше 2 символов</label>';
} else if ( strlen($_POST['name']) > 20 ) {
$errorValidation['nameLong'] = '<label id="name-error" class="error" for="name">Имя не должно содержать больше 20 символов</label>';
} else {
$name = htmlspecialchars(trim($_POST['name']), ENT_QUOTES);
}
} else if (empty($_POST['name'])) {
$errorValidation['nameEmpty'] = '<label id="name-error" class="error" for="name">Поле обязательное для заполнения</label>';
}