Содержание
|
Предыдущая | Следующая |
Проверке корректности данных, вводимых пользователем необходимо уделять достаточно большое внимание, поскольку необработанные ошибки, возникающие при вводе неправильном вводе данных, приводят к ошибкам в работе скрипта, зачастую катастрофическим. Предположим, вы создаете форму для отправки пользователем письма, при этом адрес электронной почты необходимо вводить пользователю. В этом случае, для корректной работы программы вы должны сделать, по крайней мере, две вещи:
- Проверить, что поле, в которое заносится электронный адрес непустое (поскольку пользователь может просто забыть ввести адрес, и, если этот случай необработан, возникнет ошибочная ситуация);
- Проверить соответствие введенного адреса с помощью регулярного выражения.
Кроме чистых ошибок пользователя, необходимо также исключить ситуации, в которых возможно злонамеренное введение некорректных данных, к примеру, различных скриптов. Для этого вводимый пользователем текст необходимо обработать функциями удаления HTML-тегов (для исключения возможности написания скриптов на JavaScript и Visual Basic) и обратных слешей (для исключения возможности написания скриптов на Perl). Т. о. минимальный набор действий, необходимый для проверки корректности данных, вводимых пользователем, включает следующие этапы:
- проверка того, что пользователь ввел данные
- проверка допустимости вводимых пользователем данных (как правило, осуществляется при помощи регулярных выражений)
- обработка текста, введенного пользователем функцией htmlspecialchars для удаления HTML-тегов
- обработка текста, введенного пользователем функцией stripslashes для удаления обратных слешей
Проверка на пустоту поля
Проверка того, что пользователь ввел данные, может осуществляться, к примеру, с помощью функции isset:
Для этой же цели можно использовать функцию empty:
На практике удобно сначала проверить, не пустой ли action формы, а потом уже проверять различные его составляющие: поле имя, e-mail и т. д. К примеру:
Проверка допустимости вводимых данных
Пусть нам надо проверить данные формы для отправки сообщения гостевой книги. Как правило, такая проверка осуществляется при помощи регулярных выражений. Рассмотрим пример, в котором создается регулярное выражение для проверки адреса электронной почты.
Будем исходить из того, что адрес должен иметь вид something@server.com. Как видим, у адреса две составляющие — имя пользователя и имя домена, которые разделены знаком @. В имени пользователя могут присутствовать буквы нижнего и верхнего регистров, цифры, знаки подчеркивания и минуса, точки. Для проверки разделителя между именем пользователя и именем домена в выражение требуется добавить +@. Таким образом, регулярное выражение, проверяющее имя пользователя и наличие разделителя имеет следующий вид:
Для проверки доменного имени добавляем такое выражение:
Объединяя эти шаги, получаем следующее регулярное выражение для проверки адресов электронной почты:
Точно таким же образом вы можете проверить и остальные заполняемые пользователем поля.
Удаление HTML — тегов и обратных слешей
Как уже говорилось, вводимый пользователем текст необходимо обработать функциями удаления HTML-тегов (для исключения возможности написания скриптов на JavaScript и Visual Basic) и обратных слешей (для исключения возможности написания скриптов на Perl). К примеру, если переменная $name содержит текст с именем пользователя, то обработка этого текста выглядит так:
Предыдущая | Следующая | |||
Если Вам нужна частная профессиональная консультация от авторов многих книг Кузнецова М.В. и Симдянова И.В., добро пожаловать в наш Консультационный Центр SoftTime.
Возможно, что вы вводите неверный пароль для данного почтового ящика,
попробуйте восстановить пароль через веб-форму восстановления пароля:
http://e.mail.ru/password/restore/
http://help.mail.ru/my/access/newpass
Если не получится восстановить доступ в почту, то напишите письмо
в Поддержку (в заголовке письма укажите тему проблемы) :
support@corp.mail.ru
Укажите в письме как можно больше информации о ящике:
дату регистрации, фильтры (если они установлены) , контакты, может
скрины есть какие, логины, пароли от него может помните, названия папок,
(чем больше сведений, тем лучше) , чтобы служба поддержки не
сомневалась, что Вы владелец ящика.
Ответ от службы поддержки приходит в течении 5 рабочих дней.
Восстановить почту можно ТОЛЬКО через техподдержку.
________________________________
Доступ в почту на Mail.Ru можно вернуть с помощью
телефона или дополнительного ящика.
Либо с помощью службы поддержки.
Возле входа в почту нажмите "Забыл пароль" и следуйте
предложенным инструкциям.
Воспользуйтесь формой восстановления пароля :
https://e.mail.ru/password/restore/
нажмите на " У меня нет доступа к указанному телефону"
(если нет доступа к номеру).
Информация в помощь:
https://help.mail.ru/my/access/newpass
Если эти способы не подходят, тогда
тут уж без вариантов, можно только с помощью
службы поддержки восстановить доступ к почте.
Напрямую со Службой поддержки Почта@Mail.Ru можно
связаться только письменно.
Напишите письмо в Поддержку
(в заголовке письма укажите тему проблемы)
на этот адрес :
mailsupport@corp.mail.ru
Укажите в письме как можно больше информации о ящике:
дату регистрации, фильтры (если они установлены) , контакты, может
скрины есть какие, логины, пароли от него может помните, названия
папок, (чем больше сведений, тем лучше) , чтобы служба поддержки
не сомневалась, что Вы владелец ящика.
Ответ от службы поддержки приходит обычно в течении 5 рабочих дней.
_________________________