Пусть на основе данных из формы будет сформировано письмо, которое поместится в папку исходящих писем почтового клиента посетителя и отправится при первом же сеансе работы с почтой. Несмотря на некоторое неудобство такой схемы, у посетителя наверняка останется положительное впечатление от сайта вследствие такого проявления оказанного ему внимания.
Для того, чтобы поместить на web-страницу сервис отправки почты, необходимо вставить в нее форму ввода данных, реализуемую с помощью тэга <form>, указав его параметры, обеспечивающие формирование заголовков письма:
<FORM METHOD="post" ACTION="mailto: [email protected]?subject=Teмa" NAME="mainform" TARGET="content" ENCTYPE="text/plain">
Параметр enctype показывает, что из себя представляет содержимое письма. Так, если он отсутствует или браузер не может его воспринять, то данные формы пересылаются в виде вложения.
Вот примерный текст формы, отправляющей на определенный адрес письмо, созданное из данных, введенных в форму.
<FORM action=mailto: [email protected]?subject=Zakaz enctype=text/plain method=post name=mainform target=content>
<p><INPUT NAME=zakaz TYPE=checkbox checked value="Желаю сделать заказ" title="Отметьте здесь, если Вы желаете заказать книгу">Я желаю заказать книгу <SELECT name=zhurn>
<OPTION value=buk selected>Букварь</OPTION>.
<OPTION value=kol>Колобок </OPTION>
<OPTION value=repa>Pепка </OPTION> </select></p>
<p><INPUT NAME=post TYPE=radio checked value="Доставка почтой"> Доставить почтой</р>
<p><INPUT NAME=podp TYPE=radio value="Доставка Союзпечатью"> Доставить по подписке Союзпечати</р>
<р>Контактная информация для связи с Вами:<TEXTAREA cols=40 name=contact wrap=virtual></ TEXTAREA></p>
<р>Ваш адрес электронной почты: <INPUT NAME=email TYPE=text></p>
<p><INPUT TYPE=submit VALUE =Отправить></р></FОRМ>
На рис. 22.1 показано, как она выглядит на web-странице.
Рис. 22.1. Так выглядит описанная в тексте форма для отправки писем
Формирование письма произойдет, как только посетитель нажмет кнопку, имеющую тип "submit". Однако, к сожалению, данный процесс полноценно пройдет лишь в том случае, если в качестве используемой по умолчанию почтовой программы установлен Microsoft Outlook Express или Microsoft Outlook. Другие почтовые клиенты будут обрабатывать передаваемые им браузером данные, введенные в форму, не совсем корректно. Скажем, The Bat! не способен брать из формы что-либо, кроме адреса получателя и темы, — то есть само письмо, увы, отправлено не будет. Во избежание подобных ситуаций следует предупредить посетителя сайта в пояснительном тексте рядом с формой отправки о том, что ее следует использовать только при установленном в качестве почтового клиента по умолчанию Microsoft Outlook Express (или Microsoft Outlook), и указать рядом с формой ваш обычный адрес электронной почты для пользователей остальных почтовых клиентов.
Автопереход
Для того, чтобы после загрузки web-страницы происходил автоматический переход на другую страницу, принято ставить в ее области <head> выражение <meta http-equiv="Refresh" content="Число секунд до перенаправления; URL= адрес страницы, куда произойдет перенаправление, обязательно с http://">. Однако в том случае, если посетитель, находясь на той странице, куда его перенаправили, нажмет в своем браузере кнопку "Назад", то возникнет несколько некрасивая ситуация: он станет нажимать на эту кнопку, желая вернуться на ту страницу, где был ранее, попадать снова на страницу с перенаправлением, и тэг Refresh будет его опять отправлять на тот сайт, который указан в нем для перенаправления. Это может вызвать у посетителя отрицательные эмоции, так что для автоматического перенаправления лучше вставить в самое начало страницы, можно даже в раздел <head> небольшой сценарий:
<script language="javascript">
window.location.replace("адрес страницы, куда произойдет перенаправление, обязательно с http://");
</script>
Команда window.location.replace() загружает в браузер посетителя страницу с указанным адресом, но не помещает информацию о ней в "Историю" ваших путешествий в Web. Тем самым предотвращается случайное возвращение посетителя на страницу с перенаправлением.
Если вам пришлось переместить свой сайт на другой сервер, то оставьте на его предыдущем месте небольшую страничку с вышеприведенными тэгом или скриптом перенаправления на ваш новый адрес. Тогда те посетители, которые придут на ваш сайт из каталогов и поисковых систем, где вы регистрировали еще старый адрес сайта, не будут для вас потеряны.
Restricted Area — Защищенная зона
Если надо организовать на сайте группу web-страниц, доступ в которую будет возможен лишь при помощи пароля, то обычно данное задание реализуется с помощью сценариев на каком-нибудь CGI-языке: Perl, РНР. На серверах бесплатного хостинга использовать данные языки обычно запрещено, однако можно прибегнуть к нехитрому приему, основанному на JavaScript.
Придумайте пароль. Создайте страницу с именем, совпадающим с паролем (например, если пароль — hgty23jyhg, то страница должна иметь имя hgty23jyhg.htm), а на ту страницу, откуда производится переход в часть сайта, защищенную паролем, вставьте форму с полем ввода пароля, кнопкой типа button и небольшой скрипт:
<form name="fоrma1">Введите пароль:
<INPUT NAME="parol" TYPE=password>
<INPUT TYPE=button VALUE="Перейти в защищенную зону" onclick=
(window.location.href=document.forma1.parol.value+".htm")>
</form>
При нажатии кнопки произойдет переход на страницу, имя которой было введено в поле ввода текста. Как такая форма выглядит — показано на рис. 22.3.
Рис. 22.3. Пароль на вход — без CGI.
Однако этот способ ограничения доступа возможен не на всех серверах, а только на тех, где запрещен так называемый "листинг директорий". Листинг директорий — это возможность просмотра содержимого папки на удаленном сервере при отсутствии в ней файла, загружаемого по умолчанию (или при неправильной конфигурации web-сервера даже при наличии такого файла). Вы наверняка во время путешествий по Интернету встречались с ситуацией, когда вместо запрошенной web-страницы высвечивается некое подобие Проводника Windows, а в верхней строчке — ссылка на "Parent Directory" (рис. 22.4)? Это означает, что на этом сервере листинг директорий разрешен, а запрошенной вами страницы не существует.
Рис. 22.4. Здесь листинг директорий разрешен.
Список файлов в окне браузера — это другие файлы в той же папке, в которой должна была бы быть запрошенная вами web-страница. Если же на сервере листинг директорий запрещен, то при попытке обратиться к несуществующей web-странице будет выдано сообщение об отсутствии на сервере такой страницы. Оно будет сгенерировано либо браузером, который получит соответствующее уведомление от сервера (рис. 22.5), либо самим сервером. В последнем случае обычно демонстрируется небольшая реклама этого сервера.