Архивы: по дате | по разделам | по авторам

Поиграем в программиста

Архив
автор : Сергей Голубицкий   26.10.1999

Сегодняшняя "Голубятня" навеяна письмом читателя Александра Балякина. Он пишет: "Отдаляетесь от ламерской темы. То про mailing листы, то про СD креаторы... Меня, допустим, сейчас интересует совсем другое: как заставить работать формы в хтмл страницах". Вот и родилась тема.


Наверное, вопрос оживления форм волнует не только Александра, но и всех уважающих себя ламеров. Вообще же, я планирую несколько "Голубятен" подряд посвятить именно программам для Интернета - серьезным редакторам html (надо же наконец поставить на место всякие там "Фронтпейджи"!), анализаторам логов, оптимизаторам соединений и т. п.

Я помню, как первый раз в жизни решил создать интерактивную страничку в Интернете. Запустил редактор, нарисовал форму, отослал на сайт, пошел тестировать. Вот дурилка картонная: кликаю мышкой на кнопке "Отправить", и ничего не отправляется. Товарищей программистов на зарплате прошу не издеваться: меня любой ламер поймет. Именно так все мы, ламеры, и воспринимаем реальность программирования: нечто вроде магического мира с волшебными палочками. Вот есть мертвая форма, и как ее ни тормоши, она не оживет. А вот подошел волшебник в колпаке, поковырялся, палочкой помахал, и все заработало.

Спустя еще какое-то время я узнал, как называлась волшебная палочка для оживления формы - cgi-script ("си-джи-ай-скрипт"). Еще я узнал, что скрипт пишут на языке, который называется Perl. Хотя можно писать на C, но предпочитают Перл. Потом, в 1995 году, я оказался в офисе компании "ИнфоАрт" и во время экскурсии, которую мне устроили, сразу заметил паренька-доходягу с толстыми линзами очков и тоненькими ручонками. На его столе лежало огроменное книжище под названием "Перл". "Вот он, - подумал я, - тот самый перловый программист. Не сегодня-завтра умрет от истощения". После посещения этого хосписа мое уважение к "скриптам" достигло мифических размеров.

Как всякий самоуверенный ламер, я решил познакомиться с Перлом поближе и принялся читать умные книжки. Но из всех программистских книжек, книжки о Перле оказались самыми наглыми. Весь их пафос сводился к одному: "Орлы, ну мы-то с вами понимаем, что на C++ здесь должна стоять скобка, но в нашем Перле - все проще". Эдакий междусобойно-элитарный клуб любителей упрощенных вариантов. Короче говоря, у ламера есть только два способа оживить свои формы: нанять перловщика или найти скатерть-самобранку.

Ну а теперь - хорошие новости. Такие "самобранки" существуют. Мне известно целых две. О них и поведаю.

Первая "си-джи-ай-писалка" - CGI Star Pro (www.webgenie.com). Самое в ней веселое - это довесок "Professional" в названии. Звучит как подлинное издевательство, потому что у профессионала CGI Star Pro ничего кроме тошноты вызвать не может. Зато для ламера - это спасение. Справиться с ней сумеет даже конченый аутист. Все, что требуется, - это:

А - Нарисовать форму.

Б - Запустить CGI Star Pro и выбрать тип сервера - под Unix или NT.

В - Открыть html-страницу, содержащую вашу форму. После этого CGI Stap Pro проверяет код, предупреждает об отсутствии обязательных полей (например, User_name, User_mail) и дает рекомендации по правильному написанию формы.

Г - Пометить звездочкой (*) те поля формы, которые обязательны к заполнению.

Д - Указать точный сетевой адрес, где будет размещаться скрипт, а также местоположение юниксовских программ mail и perl.

Е - Написать простенький текст для сообщения, которое получит посетитель вашей страницы после того, как удачно заполнит форму, и...

Все! Нажимаете на кнопку "Write CGI", и программа сама генерирует код. Ради интереса откройте созданный файл и попробуйте сосчитать, сколько лет вам бы потребовалось для того, чтобы самому залудить такую абракадабру.

После создания скрипта самое главное - правильно перебросить его на сервер. В девяноста случаях из ста ламерский скрипт не работает именно потому, что его неправильно перебрасывают. Дело в том, что у протокола ftp бывает два метода передачи данных: АSCII (для текста) и binary (для программ). Скрипты с расширением cgi следует передавать не как программу, а как текст, то есть ASCII.

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

И тут у ламера есть еще два варианта: во-первых, посетить сайт www.download.ru, где покоится неплохая коллекция самых разнообразных скриптов на все случаи жизни. Другой вариант - это программа PerlBuilder (http://solutionsoft.com). Только сразу хочу предупредить: PerlBuilder - это не CGI Star Pro. Тут нажиманием двух кнопочек не отделаешься. Зато и возможности программы на несколько порядков выше.

PerlBuilder претендует на то, чтобы считаться не просто программой, но подлинной интегрированной средой разработчика (IDE - integrated development environment) для создания скриптов Перл на платформе Windows 95/NT. Кроме очень удобного графического интерфейса, PerlBuilder обладает возможностью отлаживать скрипт и проводить его дебаггинг, как говорится, "не отходя от кассы" (правда, для этого требуется дополнительно установить бесплатный Перл для Windows). Помимо этого в PerlBuilder включен Мастер подсказок, который на порядок более гибок, чем CGI Star Pro, хотя по своей простоте не уступает австралийскому примитивисту.

Под самую завязку хочу поделиться двумя неудачами. Первая связана с темой предыдущей "Голубятни" - программой EZ CD Creator. Не прошло и полугода, как программа буквально отомстила за то, что я раскрыл тайну ее местоположения в мировой сети: CD Creator не просто рухнула на моем компьютере сразу после установки SCSI-сканера и присоединения его к той же карте, что и прожигатель дисков. Нет, это было бы очень просто. CD Creator потащила за собой в могилу и всю операционную систему: она что-то там поковеркала в aspi-драйвере, и Windows отказалась загружаться навсегда. Пришлось возвращаться к предыдущей версии 3.5: в ней хоть и нет микрософтовских скрепок-дебиляшек, зато работает как часы.

Вторая неудача косвенно инспирирована Ильей Хрупаловым: я прочитал его очередной обзор и приобрел анонсированный графический планшет Professional Pal. Windows NT категорически отказалась распознавать новую железяку, хотя тайваньский паренек буквально божился, что у него есть драйверы под эту операционную систему. Я, как водится, начал ковыряться и что-то там подправлять, и через полчаса операционная система приказала долго жить - пришлось и ее переустанавливать с нуля.



© ООО "Компьютерра-Онлайн", 1997-2024
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.