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

Горные лыжи из Бреста
Горные лыжи из Бреста
 
Поддержи инвалидов по зрению
Поддержи инвалидов по зрению
 
Реклама на светодиодных экранах
Реклама на светодиодных экранах
 

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


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

Свой чат – это просто - 6


Если в чате больше, чем 2 собеседника, выводится меню для привата, в котором можно выбрать, кому именно будет послано сообщение в чате. Если это поле не трогать, сообщение смогут прочитать все присутствующие. С первого взгляда можно подумать, что код реализует простой приват, и это так и есть, так как сообщения видят и адресат и автор. Однако алгоритм этого привата неоптимизирован, приватное сообщение приходится писать два раза в базу сообщений, а можно ввести еще одну позицию и проверять ее наличие.

                   }

if ($met != -1) {

if ($msg and $person) { 

 $sav = "$person~$time~$msg~$komu\n";

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

 if ($fp) { $fw = fwrite($fp, $sav); fclose($fp); }

Формируется строка, в соответствии с установленными правилами: имя ника, время сообщения, само сообщение, кому сообщение. Каждый параметр отделен от другого тильдой. В конце – обязательный перевод строки. Он служит разделителем, кроме того что еще и обеспечивает удобочитаемость базы сообщений.

if ($komu) {

 $sav = "$komu~$time~$msg~$person\n";

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

 if ($fp) { $fw = fwrite($fp, $sav); fclose($fp); }

               }

И делаем еще одну аналогичную запись, если выбрано сообщение для определенного ника (приватное сообщение). Это нужно для того, что бы сообщение смог увидеть не только тот, кому его послали, но и тот, кто послал.

                }  

} else { echo "   Ошибка чтения данных – повторите вход в систему!!!"; }

Если посетитель не авторизован, появится это сообщение об ошибке.

?></form></body></html>

Все, с вводом данных уже покончено. Осталось вывести список тех, кто присутствует в чате в данный момент.

Напоминаю, код максимально упрощен, в нем отсутствуют многие необходимые вещи – хоть тоже урезание вводимой строки в коде PHP. Попробуйте усовершенствовать его и внести свои, уникальные функции и возможности.

userlist.phtml

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

<? include ("tools.phtml"); ?>

<html><head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<meta http-equiv=refresh content="15; url=userlist.phtml">

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

<base target=userlist></head>

<style type=text/css>

body {

scrollbar-face-color:#546A8C;

scrollbar-3dlight-color:white;

scrollbar-track-color:white;

scrollbar-arrow-color: white;

scrollbar-border-color:black

        }

p  { font: 10 px verdana }

td { font: 10 px verdana }

</style>

<body topmargin=0 leftmargin=0 bgcolor=#546A8C>

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



Д. Томас, Д. Хэнссон, Сэм Руби

Гибкая разработка веб-приложений в среде Rails
Перед вами новое издание бестселлера «Agile web development with Rails», написанного Сэмом Руби - руководителем Apache Software Foundation и разработчиком формата...

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

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

У. Стейнмец, Б. Вард

PHP. 75 готовых решений для вашего web-сайта (+ CD-ROM)
Каждый, кто делает или собирается сделать свой web-сайт, неизбежно сталкивается с целым рядом задач и трудностей: как сделать блог на сайте, "прикрутить" голосование, закрыть...

Робин Вильямс

Дизайн для недизайнеров
Вы держите в руках замечательное пособие для тех, кто не является профессиональным дизайнером, но вынужден время от времени заниматься созданием различных образцов "дизайнерского...

    Информация

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

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

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

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