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

Геологические работы
Геологические работы
 
Экскурсии в Европу, из Бреста!
Экскурсии в Европу, из Бреста!
 
Баня открыта и ждет посетителей!
Баня открыта и ждет посетителей!
 

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


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

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


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

«Robot» - это имя системного автоответчика, который будет иметь возможность вставить в общий разговор пару слов, типа кто пришел, кгода ушел и т.д.

$file_kto_in_chat = "memolog/kto_chat.txt";

Путь к файлу, в котором хранится список тех, кто в данный момент присутствует в чате.

// $time = Date("H:i");

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

$time1 = Date("H");

$time2 = Date("i");

$time1 = $time1 – 1;

if ($time1 < 0) { $time1 = 23; }

$time = "$time1:$time2";                                            

?>

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

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

На этом все приготовления окончены, идем дальше.

header.phtml

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

Сейчас мы будем последовательно разбирать его код.

 <?

include ("tools.phtml");

session_register("person", "pass");

Опять идет работа с переменными, нужными для авторизации. Он ведется, как я уже говорил, посредством сессий, механизм которых появился в 4 версии PHP. В первой строчке этого кода мы вызываем на исполнение служебный файл «tools.phtml», описанный несколько выше.

$kto = file ($file_kto_in_chat);

Этим оператором мы считываем в массив файл, в котором хранятся Ники присутствующих посетителей. Храняться они там в специальном формате. Вначале идет имя Ника, потом в качестве разделителя символ «~» (тильда) и в конце строки – время последнего обновления связи с этим ником. Оно хранится, как мы помним, в виде количества секунд, прошедшего с 1 января 1970 года. Строки разделяются между собой при помощи символа перевода строки.

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

$fi = Count($kto);

$met = -1;

$i = 0;

while ($i <= $fi):

   

$str = trim(str_replace ("\n","", $kto [$i]));

Открываем цикл, и в нем избавляемся от концевых пробелов и переводов строк в массиве с именами (Никами) тех, кто присутствует в чате.

if ($str) {

list ($name_kto, $time_kto) = split ("~", $str);

Раскодируем информацию, полученную об очередном нике. Вся раскодировка заключается в раскладывании по своим переменным имени ника и его времени последней связи.

if ( ($time_nast-$time_kto) > $chat_number and

$name_kto != $person)

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

 {

$kto [$i] = "";

Для информации надо послать в чат сообщение, что ушел такой-то ник. Это даст возможность другим посетителям контролировать процесс входа и главное, выхода других посетителей. У нас есть такая возможность!

$sav = "$name_rob~$time~Ушел $name_kto~\n";

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

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

 

}

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

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



Дмитрий Котеров, Алексей Костарев

PHP 5 в подлиннике
Рассматриваются основы функционирования Web-серверов, сборка исполняемого модуля PHP в ОС UNIX, инструментарий Web-разработчика (в том числе утилиты отладки сценариев), синтаксис...

Итан Маркотт

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

Рэйчел Эндрю

CSS. 100 и 1 совет
Книга будет интересна веб-дизайнерам и разработчикам, у которых нет времени на штудирование огромного количества теоретического материала при создании собственного сайта. Это...

Майкл Моррисон

Изучаем JavaScript
Вы готовы сделать шаг вперед в своей практике веб-программирования и перейти от верстки в HTML и CSS к созданию полноценных динамических...

    Информация

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

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

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

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

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