Виртуальный Брест
Главная Портал Форум Рассылки Контакт Для клиентов Статьи

 
Магазин интимных товаров
Магазин интимных товаров
 
АФФАБЕЛЬ - шаг к красоте
АФФАБЕЛЬ - шаг к красоте
 

Виртуальный хостинг - дом для вашего сайта - лучшее предложение в Бресте!


Полный список глав книги

Гостевая – это просто


То, что знать мнение других о себе и о своем детище иногда полезно, никто не спорит. Когда сайт крепко становится на ноги, и выходит из стадии младенчества, Web-мастер задается вопросом – как бы мне узнать, что именно хотят мои посетители, что волнует их и что не нравится на сайте? Все эти вопросы легко исследовать, установив гостевую книгу. Именно этим мы сейчас и займемся.

Все, что понадобиться, это два файла. В первом будут размещены форма для ввода данных и сам скрипт гостевой, а во втором – храниться результаты введенных данных в специальном формате.  Давайте обзовем их соответственно guest.phtml и guest.txt. Не забывайте, что после закачки на сервер этих двух файлов на файл с результатами (guest.txt) нужно будет установить атрибуты, разрешающие запись в файл. Сделать это можно практически в любом из FTP-менеджеров, проверив атрибуты уже закачанного на сервер файла, и установив в настройках все галочки.

Теперь перейдем непосредственно к коду. Напоминаю, он должен быть введен в файл guest.phtml. Для начала, делаем форму для ввода данных. Оформить Вы сможете ее сами, по собственному вкусу, так что я сосредоточусь на сути.

<h2>Гостевая книга</h2>

<form action=guest.phtml method=post>

Введите email: <INPUT TYPE=TEXT NAME=email><BR>

Ваше имя: <INPUT TYPE=TEXT NAME=name><BR>

Сообщение: <br><textarea name="msg" rows=10 cols=40></textarea>

<p><input type=submit value="Отправить "></p>

Только что мы определили форму с тремя полями – адрес (переменная email), имя (переменная name) и сообщение (переменная msg). После того, как посетитель введет данные, и нажмет на кнопку «Отправить», все эти переменные будут доступны нашему скрипту, причем значение переменных будет соответствовать введенным данным. Теперь нужно все это обработать.

<?

$files = "guest.txt";

$qq=50;

Мы определились с именем файла, куда будем писать данные и с максимальным количеством сообщений, которое может быть выведено на экран.

if (!$email) { $email = “нет”; }

$msg=substr($msg,0,999);

$email=substr($email,0,39);

$name=substr($name,0,39);

Здесь введенные данные обработаны таким образом, что бы переменная адреса не была пустой (то есть если туда ничего не ввели, она была равна строке “нет”). А так же каждая введенная переменная обрезается, что бы ограничить количество вводимых символов. Это нужно для защиты от баловства, когда в книгу начинают вводить массу информации, которая никому не нужна.

if ($msg != "" && $name != "") {

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

 $time = Date("h:i:M:d");

 $soo = "\n<b>$time $name (<a href=\"mailto: $email \">

 $email </a>)</b><br> $msg<hr>";

 $fp = fopen($files, "a+");

 $fw = fwrite($fp, $soo);

 fclose($fp); }

Вначале определяется и форматируется время, когда вводится сообщение. Потом формируется строка для записи в файл. Она представляет из себя последовательность нужных переменных, отформатированных тегами HTML. За счет этого нам дальше будет очень легко просматривать архив сообщений и выводить на экран нужный промежуток (если количество сообщений превысит сотню, вы это оцените – очень удобно поставить ссылку, и смотреть сообщения с 50-го по 80-е, например). После того, как строка для записи подготовлена, она записывается в файл. Дальше – вывод результатов записи.

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

$lines = file($files);

$a = count($lines);

$u = $a - $qq;

for($i = $a; $i >= $u ;$i-) { echo $lines[$i]; }

?>

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

Вот и все! В файл для сообщений ничего записывать не нужно – он будет заполняться по мере ввода данных. Архив сообщений всегда будет доступен, если Вы поставите ссылку:

 <a href=guest.txt>архив</a>

Нужно заметить, что код не учитывает ввод посетителем тегов HTML. Но это уже несколько иная задача, и сделать это легко, если только нужно. Использоваться этот скрипт может в любом месте, где нужно узнать мнение посетителей, например, о статье, о новостях и т.д. Так же это – простейший форум.

Читать еще...



Дэвид Макфарланд

Большая книга CSS
Современные технологии веб-дизайна активно развиваются. Если раньше процесс графического оформления сайта представлял собой скрупулезную работу в HTML, то сегодня CSS позволяет...

Питер Гастон

CSS3. Руководство разработчика
Эта книга — исчерпывающее руководство по использованию стандарта CSS3 — передовой области веб-дизайна. Здесь представлены все ключевые аспекты: работа...

Н. Закас

JavaScript. Оптимизация производительности
Шестое издание JavaScript. Подробное руководство от Дэвида Флэнагана стало супер бестселлером и самым надежным помощником всех JavaScript-программистов. Но один аспект темы...

С. Малик

Microsoft SharePoint 2010 для профессионалов
Описаны все возможности платформы для разработки сайтов и корпоративных порталов SharePoint 2010 компании Microsoft. Основной акцент сделан на новых функциях и возможностях....

    Информация

Главная - переход на начало
Тарифы на Российский хостинг
Правила - что можно а что нет
Заказ - сделайте это сейчас
Выбор домена - найди свое имя
Регистрация домена - купить
Оплата - варианты для всех
Панель управления Россия
Панель управления Беларусь
Вопросы и ответы - информация
Разработка сайтов - сопровождение
Виртуальный Брест - портал
Контакт - обратная связь
Наш форум - пообщаемся?

Список доменов
в которых доступна бесплатная регистрация имен при покупке хостинга, а так же открытие поч- тового ящика:

Новости Бреста:

Второй порыв теплосетей в Бресте - двенадцать многоэтажных домов и один детский сад остались без тепла
Почти тонну мёда задержали налоговики при проверке в Бресте
Зарплата в конвертах в Бресте - видео
Трое жителей Кавказа в "поисках работы" забрались прямо в лес в пограничную зону
Профилактика квартирных краж - важно
Современный животноводческий комплекс на 1500 голов строится в СПК "Королевский" Кобринского района - фото
Результаты проходящей на территории Брестской области акции "Не упусти свой шанс"
Осенний месячник по наведению порядка на земле проходит на Брестчине - важно
В Лунинецком районе в водоеме нашли автомобиль с телом внутри
ГАИ: брестчанин решил стать маршрутчиком и в пьяном состоянии вез горожан

© Виртуальный Брест 2001 - 2009 Автор проекта: Андрей Кухарчик Дизайн: Partgraphic