Рубрики
Uncategorized

Примеры PHP-форм

Автор оригинала: David Wong.

Обработка формы

ПОЛУЧИТЬ против ПУБЛИКАЦИИ

1. Как get, так и post создают массивы (например, массив (ключ = > значение, ключ2 = > Значение 2, Ключ3 = > значение 3,…). Этот массив содержит пары ключ/значение, где ключ-это имя элемента управления формой, а значение-входные данные пользователя.

2. Get и post рассматриваются как$_ Get и$_ POST.Они являются супер глобальными переменными, что означает, что доступ к ним не нужно ограничивать – вы можете получить к ним доступ из любой функции, класса или файла без какого-либо специального кода.

3. Режим передачи

$5 Get-это массив переменных, передаваемых текущему сценарию через параметр URL. $5 Post-это массив переменных, передаваемых текущему сценарию через HTTP post.

(1) Когда использовать get?

Информация, отправленная из формы с помощью метода get, видна любому (все имена и значения переменных отображаются в URL-адресе). Get также ограничивает объем отправляемой информации. Он ограничен примерно 2000 символами.

Get можно использовать для отправки конфиденциальных данных.

Примечание: никогда не используйте get для отправки паролей или другой конфиденциальной информации!

(2) Когда использовать почту?

Информация, отправленная из формы с помощью метода post, невидима для других (все имена/значения встроены в тело HTTP-запроса), и объем отправляемой информации не ограничен.

Кроме того, post поддерживает функции высокого уровня, такие как многосоставный двоичный ввод при загрузке файлов на сервер.

Совет: разработчики предпочитают отправлять данные формы по почте.

Проверка формы

Функция Htmlspecialchars()

Если вы хотите отправить форму на саму страницу, а не переходить на другую страницу. Таким образом, пользователи могут получать сообщения об ошибках на странице формы.

HTML-код формы выглядит следующим образом:

php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">

(1) Что это за переменная$_ SERVER[“PHP_ Self “]?

$$5 СЕРВЕР[“PHP_ Self”] – это суперглобальная переменная, которая возвращает имя файла текущего выполняемого сценария. Поэтому$_ SERVER[“PHP_ Self “] отправляет данные формы на саму страницу, а не переходит на другую страницу. Таким образом, пользователи могут получать сообщения об ошибках на странице формы.

(2) Что такое функция htmlspecialchars ()?

Функция htmlspecialchars() преобразует специальные символы в объекты HTML. Это означает, что HTML-символы, такие как < и>, заменяются на & lt; и & gt;, а эффект страницы по-прежнему < >. Это предотвращает использование злоумышленниками кода путем введения кода HTML или JavaScript в форму (атаки с использованием межсайтовых сценариев). Если нет функции htmlspecialchars()

URL-адрес для ввода хакером:

http://www.example.com/test_form.php/%22%3E%3Cscript%3Ealert('hacked')%3C/script%3E

Форма будет преобразована в:

Типичное отражение XSS

Функция проверки формы:

Обязательные поля для проверки электронной почты и URL-адреса

1. Проверьте имя

Следующий код показывает простой способ проверить, содержит ли поле имени буквы и пробелы. Если поле имя неверно, сохраняется сообщение об ошибке:

$name = test_input($_POST["name"]);
if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
 $nameerr = "only letters and spaces are allowed! "; 
}

2. Проверьте электронную почту

Следующий код показывает простой способ проверки правильности синтаксиса адреса электронной почты. Если нет, сохраняется сообщение об ошибке:

$email = test_input($_POST["email"]);
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) {
 $mailerr = "invalid email format! "; 
}

3. Проверьте URL-адрес

В следующем коде показан метод проверки правильности синтаксиса URL-адреса (это регулярное выражение также допускает косые черты в URL-адресе). Если синтаксис URL-адреса неверен, сохраняется сообщение об ошибке:

$website = test_input($_POST["website"]);
if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%
=~_|]/i",$website)) {
 $websiteer = invalid URL; 
}

Заполните экземпляр формы


 




 



PHP instance verification

< span > * required fields

"> Name: < input type = "text" name = "name" > *

Email: < input type = "text" name = "email" > *

Website: < input type = "text" name = "website" >

Comments: < textarea name = "comment" rows = "5" cols = "40" >

Выше приведено подробное содержание резюме знаний, связанных с формой PHP. Для получения дополнительной информации о форме PHP, пожалуйста, обратите внимание на другие соответствующие статьи в developeppaer!