kot2566
@kot2566

Нужно ли проверять длину значений, приходящих от пользователя?

Очень тупой вопрос, но звучит так:
Принимаю данные от пользователя на сервере методом POST.
Нужно ли следить за длиной значений полей при валидации?
Например:
$someString = preg_replace("/[^w]+", $_REQUEST['message']);

Нужно ли предварительно проверять длину значений для избежания тяжёлых дальнейших проверок:
if (strlen($_REQUEST['message'])>10000)
{
  die('very big message');
}

$someString = preg_replace("/[^w]+", $_REQUEST['message']);

В уроках по валидации обычно не бывает про ограничение длины сверху.
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
@alexalexes
Всегда полезно проверять мин. макс. параметры всех значений и кидать исключение в случае чего.
А вообще, есть кейсы, где лучше поругаться на слишком большую длину сообщения.
Например, когда будете сохранять это сообщение в СУБД MySQL в поле типа данных varchar(10000) с превышением длины, то СУБД в случае превышения длины строки по тихому сохранит первые 10000 символов, а переполненную часть - нет. Так что лучше проверить длину сообщения, и если она не соответствует регламентированной, то не давать зеленый свет для обработки.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы