web

#6.17 php Web-приложения - итоги

В этой главе описаны разнообразные приемы проверки данных, вводимых в HTML-формах. Ниже перечислены краткие итоги главы:

#6.15 php web приложения HTTP аутентификация

Часто перед тем, как разрешить пользователю вводить какие-либо данные, следует осуществить его регистрацию. Большинство серверов (например, Apache) позволяют ограничивать доступ к определенным разделам web-сайта. Путем соответствующей настройки доступ получат только пользователи, перечисленные в конфигурационном файле сервера. При попытке доступа к защищенной части сервера будет отображено диалоговое окно, в котором следует ввести имя пользователя и его пароль, как показано на рис. 1.

#6.14 php web приложения Использование JavaScript для проверки данных

Наряду с РНР, который производит проверку данных на стороне сервера, можно также использовать JavaScript, при помощи которого данные могут быть проверены на стороне клиента. Использование JavaScript уменьшает нагрузку на сервер, а также сокращает трафик. Данный раздел не относится к РНР, но для полноты охвата темы он включен в книгу. В то же время, если пользователь отключил использование JavaScript, всегда можно использовать проверку на стороне сервера.

#6.13 php web приложения Сохранение данных

Если форма для ввода данных содержит несколько полей, а ошибку пользователь допустил при заполнении только некоторых из них, разумно сохранить корректные данные при повторном выводе формы, чтобы пользователю не пришлось бы вводить верные данные заново. Этот подход продемонстрирован в примере 1, который содержит форму из двух полей, обязательных для ввода. Если пользователь заполнит только одно поле из двух, то при нажатии кнопки «ОК» будет сформировано соответствующее сообщение об ошибке, но уже введенное значение сохранится, и пользователю не придется набирать его повторно.

#6.12 php web приложения Кодирование тегов HTML

В предыдущем разделе теги просто удалялись из текста. Но что делать, если требуется отобразить текст, содержащий HTML-теги, но при этом ещё и обеспечить безопасность приложения? В этом случае уместно использовать функцию htmlentities, которая осуществляет кодирование тегов, преобразовывая их в последовательность специальных символов.

#6.11 php web приложения Удаление тегов HTML

При обработке введенного текста необходимо обратить внимание на следующую деталь, в особенности, если строку потом планируется отображать. Пользователь может использовать при наборе текста теги HTML (в том числе и выражения на JavaScript), что может повлиять на корректность работы приложения при использовании этого текста для формирования страницы. Для предотвращения этой ситуации можно использовать функцию strip_tags, которая удаляет из заданной строки все теги, что и продемонстрировано в примере 1.

#6.10 php web приложения Проверка строковых полей

Нередко возникает задача проверить текстовое поле на соответствие определенным критериям. Например, требуется проверить, содержит ли заданное текстовое поле слово «РНР». В РНР имеется мощный механизм регулярных выражений, который позволяет решать подобные задачи.

#6. 9 php web приложения Проверка числовых полей

Часто требуется проверить, что в поле введено целое или вещественное число, а не просто строка. Одним из наиболее простых способов является преобразование строки в число (при помощи функции intval или floatval для целых или вещественных чисел соответственно) и затем обратно в строку, а затем сравнение исходной и полученной двойным преобразованием строки. Если они совпадают, то исходная строка содержит корректное число.

#6. 8 php web приложения Обязательное для заполнения поле

Проверка на наличие данных в определенном поле требуется достаточно часто. Например, приложение запрашивает у пользователя его имя и отображает его. Если поле заполнено, все функционирует корректно. Но что делать в том случае, если пользователь оставил текстовое поле пустым? Для этого в следующем примере функция validate_data выполняет проверку на наличие данных в поле Name и в случае, если это не так, добавляет сообщение об ошибке в массив $errors.

Pages

Subscribe to RSS - web