Доступ к готовым решениям

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Урок Работа с HTML формами

Статус
В этой теме нельзя размещать новые ответы.

Battista

Мастер
Способы передачи параметров сценарию

Как Вы уже поняли, наиболее распространенными методами передачи данных между браузером и сценарием являются GET и POST. Однако вручную задавать строки параметров для сценариев и к тому же URL-кодировать их, согласитесь, довольно утомительно. Давайте посмотрим, что предлагает нам для облегчения жизни HTML.

Мы будем рассматривать метод GET для передачи запросов серверу.

Даже программисту утомительно набирать параметры в URL вручную. Различные ?, &, %... Представьте себе пользователя, которому необходимо это делать... К счастью, существуют удобные возможности языка HTML, которые, конечно, поддерживаются браузерами.
Итак, пусть у нас на сервере в корневом каталоге размещен файл сценария script.php. Этот сценарий распознает 2 параметра: name и age. Где эти параметры задаются, мы пока не решили. При переходе по адресу http://www.pawno-info.ru/script.php он должен отработать и вывести следующую HTML-страницу:

HTML:
<html><body>
Привет, name! Вам age лет!
</body></html>
Разумеется, при генерации страницы нужно name и age заменить на соответствующие значения, переданные в параметрах.

Передача параметров через адресную строку браузера

Давайте попробуем включать параметры прямо в URL, в строку параметров. Таким образом, если запустить в браузере http://www.pawno-info.ru/script.cgi?name=Vasya&age=20 мы получим страницу с нужным результатом:

HTML:
<html><body>
Привет, Vasya! Я знаю, Вам 20 лет!
</body></html>
Обратите внимание, что мы разделяем параметры символом &, а также используем знак равенства =. Чуть нуже мы поясним, что это значит.

Использование HTML-форм


Как теперь нам сделать, чтобы пользователь мог в удобной форме ввести свое имя и возраст? Очевидно, нам необходимо интерактивное окно, в которое осуществляется ввод наших параметров, причем через браузер.

Итак, нам понадобится обычный HTML-документ (например, с именем form.html и расположенный в корневом каталоге) с элементами диалога — полями ввода текста и кнопкой, при нажатии на которую запустится скрипт script.php. Текст документа form.html:

PHP:
<html><body>
<form action="script.php">
Введите имя: <input type=text name="name"><br>
Введите возраст: <input type=text name="age"><br>
<input type=submit value="GO!">
</form>
</body></html>
Загрузим наш документ в браузер. Теперь, если ввести в поле с именем свое имя, а в поле для возраста — свой возраст и нажать кнопку, браузер автоматически обратится к сценарию hello.php и передаст через ? все атрибуты, расположенные внутри тэгов <input> в форме и разделенные символом & в строке параметров. Заметьте, что в атрибуте action тэга <form> мы задали относительный путь, т. е. сценарий hello.php будет искаться браузером в том же самом каталоге, что и файл form.html.

Как мы знаем, все перекодирования и преобразования, которые нужны для URL-кодирования данных, осуществляются браузером автоматически.

Использование форм позволяет в принципе не нагружать пользователя такой информацией, как имя сценария, его параметры и т. д. Он всегда будет иметь дело только с полями, переключателями и кнопками формы.

Осталось теперь только определиться, как мы можем извлечь $name и $age из строки параметров и обработать их.

Далее мы рассмотрим, каким же образом PHP скрипт принимает параметры запроса и обрабатывает их.

 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу