Основы PHP
  Что такое PHP?
  Возможности PHP
  Преимущества PHP
  История развития
  Что нового в PHP5?
  «Движок» PHP
  Переход на PHP 5.3
New Переход на PHP 5.6
  Введение в PHP
  Изучение PHP
  Основы CGI
  Синтаксис PHP
  Типы данных PHP
  Переменные в PHP
  Константы PHP
  Выражения PHP
  Операторы PHP
  Конструкции PHP
  Ссылки в PHP
  PHP и ООП
  Безопасность
  Функции PHP
  Функции по категориям
  Функции по алфавиту
  Стандартные функции
  Пользовательские
  PHP и HTTP
  Работа с формами
  PHP и Upload
  PHP и Cookies
  PHP и базы данных
  PHP и MySQL
  Документация MySQL
  Учебники
  Учебники по PHP
  Учебники по MySQL
  Другие учебники
  Уроки PHP
  Введение
  Самые основы
  Управление
  Функции
  Документация
  Математика
  Файлы
  Основы SQL
  Дата и время
  CURL
  Изображения
  Стили
  Безопасность
  Установка
  Проектирование БД
  Регулярные выражения
  Подготовка к работе
  Быстрый старт
  Установка PHP
  Установка MySQL
  Конфигурация PHP
  Download / Скачать
  Скачать Apache
  Скачать PHP
  Скачать PECL
  Скачать PEAR
  Скачать MySQL
  Редакторы PHP
  Полезные утилиты
  Документация
  PHP скрипты
  Скачать скрипты
  Инструменты
  PHP в примерах
  Новости портала
 Главная   »  PHP и HTTP - Работа с HTML формами
 
 

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

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

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

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

<html><body>
Привет, name! Вам age лет!
</body></html>

Разумеется, при генерации страницы нужно name и age заменить на соответствующие значения, переданные в параметрах.

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

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

<html><body>
Привет, Vasya! Я знаю, Вам 20 лет!
</body></html>

Обратите внимание, что мы разделяем параметры символом &, а также используем знак равенства =. Чуть нуже мы поясним, что это значит.

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

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

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

<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 скрипт принимает параметры запроса и обрабатывает их.

 
 
 <<< Назад 
 Содержание 
 Вперед >>> 
Есть еще вопросы или что-то непонятно - добро пожаловать на наш  форум портала PHP.SU 
 

 
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS