Пример программы на php с формами

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

Пример 1. Отображение формы и обработка полученных данных

else < formResult(); >//вывод формы function formShow() < echo ».»n»; echo ‘Введите имя:
‘.»n»; echo ‘
‘.»n»; echo ».»n»; echo ».»n»; > //обработка ввода function formResult() < echo ».»n»; echo ‘Привет, ‘.htmlentities($_POST[‘name’], ENT_QUOTES).’.
‘.»n»; echo ».»n»; echo ».»n»; >

Всё просто. Принятие решения, какую страницу выводить, отделяем от вывода формы и от обработки результата.

Глобальная переменная $_SERVER[‘REQUEST_METHOD’] содержит метод, который был использован для запроса страницы: ‘GET’ — при вводе адреса страницы в браузере, затем после отправки формы — ‘POST’.

Простая обработка форм на PHP для начинающих. Урок 1

$_SERVER[‘SCRIPT_NAME’] — содержит путь к текущему исполняемому скрипту. Это позволяет не менять код программы при её переименовании.

Функция htmlentities преобразует все символы в html-сущности, как указано в описании. Это позволяет корректно выводить в браузере введенные пользователем знаки разметки html и защищает от межсайтовых сценарных атак. Помимо экранирования одиночных кавычек (параметр ENT_QUOTES), необходимо также проверять пользовательский ввод и на соответствие введенных символов кодировке. Однако с последним будем разбираться позднее.

Можно применить для вывода html-кода формат heredoc:

function formShow() < $script = htmlentities($_SERVER[‘SCRIPT_NAME’]); echo Введите имя:

FORM; >

Мне кажется, что heredoc затрудняет чтение, однако, если вам проще такой код — используйте его.

Результат вывода формы будет примерно таким:

Читайте также:
Разработайте меню которое может быть в программе

Введите имя:

Далее разберемся как проверять пользовательский ввод.

При написании использовал книгу PHP. Рецепты программирования

Источник: habr.com

Работа с формами в PHP

Для передачи данных от пользователя Web-страницы на сервер используются HTML-формы. Для работы с формами в PHP предусмотрен ряд специальных средств.

Предварительно определенные переменные

В PHP существует ряд предварительно определенных переменных, которые не меняются при выполнении всех приложений в конкретной среде. Их также называют переменными окружения или переменными среды. Они отражают установки среды Web-сервера Apache, а также информацию о запросе данного браузера. Есть возможность получить значения URL, строки запроса и других элементов HTTP-запроса.

Все предварительно определенные переменные содержатся в ассоциативном массиве $GLOBALS . Кроме переменных окружения этот массив содержит также глобальные переменные, определенные в программе.

PHP. Работа с формами

Пример 1

Просмотр массива $GLOBALS $value ) echo «$GLOBALS[«$key»] == $value
«; ?>

В результате на экране появится список всех глобальных переменных, включая переменные окружения. Наиболее часто используемые из них:

ПеременнаяОписаниеСодержание
$_SERVER[‘HTTP_USER_AGENT’] Название и версия клиента Mozilla/5.0 (X11; Linux i686) AppleWebKit/535.21 (KHTML, like Gecko) Chrome/19.0.1041.0 Safari/535.21
$_SERVER[‘REMOTE_ADDR’] IP-адрес 37.78.162.198
getenv(‘HTTP_X_FORWARDED_FOR’) Внутренний IP-адрес клиента
$_SERVER[‘REQUEST_METHOD’] Метод запроса ( GET или POST ) GET
$_SERVER[‘QUERY_STRING’] При запросе GET закодированные данные, передаваемые вместе с URL
$_SERVER[‘REQUEST_URL’] Полный адрес клиента, включая строку запроса
$_SERVER[‘HTTP_REFERER’] Адрес страницы, с которой был сделан запрос https://htmlweb.ru/
$_SERVER[‘PHP_SELF’] Путь к выполняемой программе /index.php
$_SERVER[‘SERVER_NAME’] Домен htmlweb.ru
$_SERVER[‘REQUEST_URI’] Путь /php/php_form.php

Обработка ввода пользователя

PHP-программу обработки ввода можно отделить от HTML-текста, содержащего формы ввода, а можно расположить на одной странице.

Пример 2

Пример обработки ввода

Номер карточки:

Здесь отсутствует кнопка передачи данных, т.к. форма, состоящая из одного поля, передается автоматически при нажатии клавиши .

Читайте также:
Как выглядит студия программы время

При обработки элемента с многозначным выбором для доступа ко всем выбранным значениям нужно к имени элемента добавить пару квадратных скобок. Для выбора нескольких эллементов следует удерживать клавишу Ctrl.

Пример 3.1

Список Чай Кофе Молоко Ветчина Сыр

Источник: htmlweb.ru

Работа с формами

Одно из главнейших достоинств PHP — то, как он работает с формами HTML. Здесь основным является то, что каждый элемент формы автоматически становится доступным вашим программам на PHP. Для подробной информации об использовании форм в PHP читайте раздел Переменные из внешних источников. Вот пример формы HTML:

Пример #1 Простейшая форма HTML

Ваше имя:

Ваш возраст:

В этой форме нет ничего особенного. Это обычная форма HTML без каких-либо специальных тегов. Когда пользователь заполнит форму и нажмет кнопку отправки, будет вызвана страница action.php . В этом файле может быть что-то вроде:

Пример #2 Выводим данные формы

Здравствуйте, .
Вам лет.

Пример вывода данной программы:

Здравствуйте, Сергей. Вам 30 лет.

Если не принимать во внимание куски кода с htmlspecialchars() и (int), принцип работы данного кода должен быть прост и понятен. htmlspecialchars() обеспечивает правильную кодировку «особых» HTML-символов так, чтобы вредоносный HTML или Javascript не был вставлен на вашу страницу.

Поле age, о котором нам известно, что оно должно быть число, мы можем просто преобразовать в integer , что автоматически избавит нас от нежелательных символов. PHP также может сделать это автоматически с помощью расширения filter. Переменные $_POST[‘name’] и $_POST[‘age’] автоматически установлены для вас средствами PHP.

Ранее мы использовали суперглобальную переменную $_SERVER , здесь же мы точно так же используем суперглобальную переменную $_POST , которая содержит все POST-данные. Заметим, что метод отправки (method) нашей формы — POST. Если бы мы использовали метод GET, то информация нашей формы была бы в суперглобальной переменной $_GET . Кроме этого, можно использовать переменную $_REQUEST , если источник данных не имеет значения. Эта переменная содержит смесь данных GET, POST, COOKIE и FILE.

Читайте также:
Kaspersky security center удаленная установка программ

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

Источник: php.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru