Еженедельная Электронная Рассылка. |
ВЕБ-ДИЗАЙНЕРУ. |
Выпуск #9.
CGI Скрипт: Возвращение Формы
Чтобы получить полный пакет для работы с этой формой скачайте файл formreturn.zip (5,3 kb).
HTML Команды для временных замен формы
* Если Вы просто хотели бы линию ("Ф.И.О.",например), заполните:
Все слова "Category" в примере могут быть заменены любым словом, каким Вы хотели бы описать этот вход. Если Вы изменяете на "name" и кто - то заполняет "Bill Gates", на Ваш email придет письмо с записью "name: Bill Gates".
<P>CATEGORY: <INPUT TYPE ="text" NAME="Category" SIZE="40"></P>
CATEGORY -слово или слова, которые будут расположены рядом с полем формы.
40 может быть любое число, это - число знаков в форме.
* Если Вы хотели бы коробку ("Ваши комментарии", например), заполните:
<P>CATEGORY<TEXTAREA NAME="Category" ROWS=4 COLS=40></TEXTAREA></P>
CATEGORY - то же самое, что и в первом случае
ROWS и COLS - размеры коробочки.
* Если Вы хотели бы выбор, используя круги, например:
( ) Choice 1
( ) Choice 2
И посетители щелкают в круге того, который они выбирают:
<P><INPUT TYPE="radio"
NAME="Category" VALUE="Choice1">Choice1</P>
<P><INPUT
TYPE="radio" NAME="Category" VALUE="Choice2">Choice2</P>
Choice1 или Choice2 - Является именем, которое появится
у Вас в e-mail'е в ответ на категорию.
CHOICE - слово, которое будет рядышком
* Если Вы хотели бы коробку проверки (это там, где галочки ставить надо), например:
[ ] Check if you want a response
И посетители щелкают, когда заполняют форму:
<P><INPUT TYPE="Checkbox" NAME="Category" VALUE="Box">BOX</P>
Box - название, которое появится в Вашем email в ответ на категорию.
BOX слово или слова, которые появятся рядом с окошечком (коробке проверки, дословно).
Если Вы хотели бы, чтобы окошечко было проверено используйте это:
<P><INPUT TYPE="Checkbox" NAME="Category" VALUE="Box" CHECKED="checked">BOX</P>
* Вы должны иметь кнопочку "submit" чтобы отправить результат на Ваш e-mail:
<P><INPUT TYPE="Submit" VALUE="SUBMIT"></P>
SUBMIT название кнопочки.
#!/usr/local/bin/perl ################################################################## $backurl = "http://dreamcatchersweb.com/test/home.html"; # DO NOT EDIT BELOW THIS LINE!!!! read(STDIN, $namevalues, $ENV{'CONTENT_LENGTH'}); open (MAIL, "|$mailprog $youmail") || die "Can't open $mailprog!\n"; # Process info from Fill in Form @namevalues = split(/&/, $namevalues); close (MAIL); # Print Follow up HTML print ("Content-Type: text/html\n\n"); foreach $namevalue (@namevalues){ print ("<hr>\n"); exit; |
Шаг за шагом инструкции для установки Формы
СОДЕРЖАНИЕ:
form.cgi - Cgi сценарий, который использует Вашу
программу возвращения формы
htmlcgi.txt - Файл текста, выделяющий возможные способы
получить вход пользователя
readme - этот файл на английском языке (может, будет
более понятно, почитав в оригинале)
sample.htm - Образец формы
Следуйте за этими легкими шагами:
1. Войдите в контакт с Вашим сервером. Попросите, чтобы они создали директорию cgi-bin для Вас. Также спросите их, как может быть осуществлен доступ к файлам в этой директории от WWW. Обычно это-" http: //www.server.com/you/cgi-bin/ ".
2. Если Вы имеете telnet, обращайтесь к Вашему серверу. В приглашении к вводу команды, напечатайте "which perl". Записывайте строку, данную Вам. Обычно это - /usr/local/bin/perl.Затем, напечатайте "which sendmail". Записывайте строку, данную Вам. Обычно это - /usr/bin/sendmail.Если не имеется sendmail программы, напечатайте "which mail" и используйте её. Затем, напечатайте "which date". Записывайте строку, данную Вам. Обычно это - /bin/date. Если Вы не имеете доступ telnet, спрашиваете ваш сервер, где находятся perl, почта, и программы date.
3. При использовании вашего любимого текстового редактора, откройте form.cgi файл.
4. Первая строка form.cgi имеет вид:
#!/usr/local/bin/perl
Если линия, которую Вы получили при запросе "which perl" имеет другой вид, то замените ее. И сохраните строку без изменения, если вид линии такой же.
5. Найдите раздел, который говорит "ONLY EDIT THIS PART OF THE SCRIPT" и изменените в соответствие Вашим требованиям.
ОБРАТИТЕ ВНИМАНИЕ: значения, уже помещенные - примеры!! Они -
обычные форматы для серверов с основанными каталогами. Вы должны заполнить ваши собственные значения!
Например:
$backurl = "http://www.something.com/~you/home.html";
Вы должны изменить на:
$backurl = "http://www.microsoft.com/~bill_gates/home.html";
Измените значения:
$backurl - URL страницы, к которой Вы хотели бы, чтобы посетители
шли после того, как они завершили вашу форму
$backname - Заголовок страницы, к которой Вы
хотели бы, чтобы посетители зашли после того, как они заполнили вашу форму
$mailprog -
Имя программы, которую Вы получили, когда Вы спросили "which mail".
$youmail -
Адрес электронной почты, куда Вы хотите получение возврата формы.
6. Все с этим файлом покончено. Сохраните его как form.cgi, или любое другое имя файла, заканчивающееся на .cgi. ПРИМЕЧАНИЕ: файл может также быть сохранен как form.pl, если ваш сервер так предпочитает.
7. Создайте HTML страницу, сделайте ее такой, какой бы Вы хотели ее видеть.
8. Вставьте строку "<FORM METHOD="POST" ACTION="http://your_cgi-bin/form.cgi">" Вместо "your_cgi-bin" впишите тот адрес, который Вы получили для cgi-bin. Обычно это "www.your_server.com/cgi-bin/your_name". Form.cgi - имя файла, Вашего cgi сценария, который появляется в вашем каталоге cgi-bin.
9. Поместите команды HTML, используемые для временных замен на вашей странице. Имеется список, и объяснение того, как использовать их - в htmlcgi.txt файл.
Вы можете использовать любые названия, которые захотите для вашего кодирования ввода html. Например:
<input type=text name="First Name" size=20>
<input type=text name="firstname" size=20>
<input type=text name="name" size=20>
10. В конце всех кодов формы, Вы должны поместить кнопку, которая позволит посетителю посылать информацию Вам. Например:
<INPUT TYPE="submit" VALUE="Submit">
11. Поместите команду </FORM> для завершения формы. И дальше можете дальше навешивать всякие приколы на Вашу страницу.
12. Сохраните файл как response.html или как Вам угодно.
13. Загрузите все .cgi файлы в Ваше cgi-bin и .htm или .html файлы к любому каталогу, к которому можно обращаться через сеть (много серверов требуют, чтобы Вы загрузили эти файлы в формате ASCII, проверьте это с вашим администратором сервера, чтобы убедиться).
14. Вы теперь должны установить разрешения файлов, которые вы загрузили. Вы может сделать этот двумя способами.
1. TELNET - Telnet на Ваш сервер и идете к каталогу, который держит файлы. Напечатайте chmod имя файла [разрешения]. Например: chmod 755 file.cgi.
2. FTP SOFTWARE - Вы будете должны выяснить, как изменить разрешения файлов, использующих Вашу программу. Используйте WS_FTP (рекомендуемый), выберите файл, у которого Вы хотите изменить разрешения и щелкайте Вашу правую кнопку мыши и выбирайте CHMOD (UNIX). Блок будет с опцией, выбираете любой номер до 9 отдельных рамок (высшая строка для чтения, средняя строка для записи, нижняя строка для выполнения). Они переводят в фактические unix разрешения. Если файл должен быть, a+rx или 755, выбирают каждый блок чтения и каждый, чтобы блок выполнения. Если файл должен быть, a+rw или 666, выбирают каждый блок чтения и блок записи. Это единственные два разрешения, из-за которых Вы должны волноваться.
Если Вы имеете доступ telnet, Вы можете также проверять Ваши сценарии на наличие ошибок, идя к каталогу, они находятся в perl filename.cgi или filename.cgi (зависит от вашего сервера). Если Вы получаете ошибку, Вы наиболее вероятно не так редактировали сценарий, посмотрите наличие " или ;
15. Загрузите страницу из интернета, заполните форму, и отправьте ее. Удостоверитесь, что Вы получаете ответ на e-mail, подождав несколько секунд.
16. Ну что получили? Да?! Тогда Вас можно поздравить, Вы сегодня хорошо поработали.
Эдмон.
admon@cmail.ru