Muranx
@Muranx
кто понял this тот в цирке не смеётся

Как правильно валидировать данные пользователя?

Здравствуйте!

Данные (логин, пасс) которые пользователь вводить в форму передаются POST запросом. Нужно ли валидировать данные на фронте? Если да, то какого рода проверки там нужны? (длина , отсутствие спец. символов в полях ввода, наличие цифр , пробелов, ит.п.) Есть ли такая практика в реальных проектах писать к примеру классы для валидации на фронте, если так делают, то где хранятся данные о том, что нужно валидировать , прописываются в самих классах типа this.min_length=.. или сохраняются в каких нибудь конфигах (которые легко организовать например на php)? Пытался найти что-нибудь интересное про встроенную валидацию в пхп, нашёл лишь описание htmlspecialchars , filter_var ит.п. Я знаю про наличие таких вещей как валидация на симфони. Но я пишу проект на нативном js и php. В общем , кому не трудно поделитесь так сказать best practice в данной теме. Может плохо искал конечно, но в основном натыкался на трэшовые статьи где объясняются основы создания форм и логин пользователя, без объяснения нюансов различия фронта и бэка .
  • Вопрос задан
  • 134 просмотра
Пригласить эксперта
Ответы на вопрос 3
Валидация на фронте это по большей части для удобства пользователя.
Ответ написан
Комментировать
sharp97
@sharp97
не фонтан но брызги есть
Ты сам решаешь какая валидация тебе нужна , реализовать можно на js , получаешь response пароля , смотришь совпадает ли , если да то авторизоваться, если нет, то выводить мол пароль не совпадает, длину символов и т д все что душа пожелает
Ответ написан
Комментировать
Adamos
@Adamos
Главная проблема с данными пользователя - это чайники-программисты, которые сразу вклеивают их в запрос в БД без подготовленных выражений, а пароль могут хранить текстом, а не хэшем.
Если на бэке все сделано правильно - проверять в данных просто нечего.
Например, пароль пользователя из семи пробелов - это вполне адекватный, сложно подбираемый пароль.
А логин DROP DATABASE ничем не хуже любого другого.
Ответ написан
Ваш ответ на вопрос

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

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