Главная Интернет WEB-учебник Новая страница


Интернет клуб





Новая страница

С чего начать?
Какой компьютер подходит?
Языки программирования
Какие нужны программы?
Текстовые редакторы
Звук в Вашей странице
Сервер для размещения страницы?
Как выгрузить страницу на сервер?
Где взять счетчик страниц?
Где взять Гостевую книгу?
Как получить ответы на вопросы Формы?
Как аннотировать страницу в Интернет?
Полезные советы

Описание html
Javascript
Java в примерах
Полезные сайты
Задайте вопрос





Web-учебник. Раздел 1. Новая страница

Как получить ответы на вопросы Формы?



Работа с формами подробно рассматривается в главе "Формы" раздела "Описание HTML" (Советую прочесть его прежде, чем продолжать читать данный раздел). В ней рассматривается способ получения заполненной формы на почтовый адрес (E-mail). Здесь обычно имеется в виду почтовый адрес разработчика страницы, содержащей форму.
Другими словами: Вы в своей странице помещаете форму с просьбой заполнить ее и нажать на такую-то кнопку. При этом в качестве адреса в параметре ACTION команды FORM Вы указываете свой E-mail. Когда пользователь Вашей страницы заполняет форму, она поступает к Вам и Вы видите значение всех заполненных полей в сообщении E-mail.
Но такой способ приема информации не всегда удобен, иногда необходимо записывать эти записи в файл и потом обрабатывать. Поэтому очень часто звучит вопрос: как записать ответы на форму в файл?
Разберем эту проблему.
Прежде всего - только средствами HTML или JavaScript этот вопрос нельзя решить.
В параметре ACTION команды FORM следует указать имя программы обработки формы. Эта программа принимает данные из формы, обрабатывает их, проверяет и , в зависимости от цели, или помещает их в файл на сервере или передает определенную информацию назад пользователю или любые другие действия.
Эта CGI - программа в принципе может быть написана на любом языке программирования, например, на C. Так вот, для обработки формы эту обрабатывающую программу надо поместить на сервер. Из соображений безопасности ( мы имеем дело с .exe файлом ) запись такой программы на диск находится вне компетенции создателя отдельной страницы и без разрешения администратора сервера Вы ее туда не напишете.
Возможно, что на Вашем сервере находится какая-то универсальная программа CGI , которая устроит Вас.
Рассмотрим входную и выходную информацию CGI программы.
В форме заполняются значения ее полей , которые должны быть переданы в программу CGI. В вашей странице параметр ACTION команды FORM принимает одно из 2 значений: GET или POST.
Метод GET предполагает передачу данных программе CGI с использованием переменной среды с названием QUERY_STRING. Данные находятся в следующем формате:

Имя1=Значение1&Имя2=Значение2&...ИмяN=ЗначениеN

Здесь в качестве имен используются значения параметров NAME, задающие имена полей формы.
Метод POST предполагает передачу данных программе CGI через стандартный поток ввода STDIN.
Получив данные формы, программа CGI может выполнить, например, следующие действия:
- Сформировать произвольным образом (но по правилам HTML) на основе этих данных , динамический документ HTML. В отличие от статических, не изменяющихся документов, динамический документ создается программой и зависит от значений полей формы. Программа выводит этот HTML - документ через стандартный поток вывода STDOUT и он появляется на экране пользователя, заполнившего форму,
- Создать новый файл на диске или дописать значения полей формы в конец этого файла, внести изменения и записать снова (например, для статистических подсчетов).

Теперь Вы понимаете, что для обработки формы Вам связаться с администратором сервера хотя бы для одной из следующих целей:
- Выяснить, какие CGI программы есть на сервере и как можно ими воспользоваться,
- Попросить поместить написанную Вами программу CGI на сервер,
- Попросить написать программу CGI для обработки Вашей формы.

Я не обьяснял в данном разделе правила написания программ CGI. Это очень большая тема. Моя цель была значительно проще - обьяснить смысл проблемы. Во всяком случае, теперь Вы в состоянии разговаривать по данному вопросу с администратором сервера на понятном ему языке.











  ©1996-2007   Megapolis Org   E-mail:   info@megapolis.org