Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Как работает чат на РНР ?


Автор: IZ@TOP 9.6.2003, 14:51
САБЖ.
Как там все это происходит ? (моно без кода ...)

Автор: Foxx 10.6.2003, 06:39
так же как и на другом языке smile.gif

Автор: IZ@TOP 10.6.2003, 08:41
Foxx А как на другом ? Можно поподробнее ! Плизззз !
Я знаю что тама все на основе сокетов, а вот мне интересно как так скрипт работает без передышки ? Как в браузере в центральный фрейм вместо обновления инфы туда дописывается ?

Автор: Master 10.6.2003, 09:29
Обновляется другой (маленький или невидимый фрейм) и туда дописывается инфа, которую потом этот же обновленный фрейм добавляет инфу в главный скорее всего на js, я этого ещё не делал, но подозреваю что можно открыть подобный чат и все увидеть самостоятельно.

Автор: IZ@TOP 10.6.2003, 12:06
Предлагаешь считывать инфу из скрытого фрейма с помощью Явасскрипта, и дописывать в основной ? А че ... идея неплохая ...

А сам движок, как он работает *? Неужели ни кто здесь чата не делал на РНР confused.gif?

Автор: Foxx 11.6.2003, 04:21
Цитата
Предлагаешь считывать инфу из скрытого фрейма с помощью Явасскрипта, и дописывать в основной ?

правильно. либо из скрытого, либо из нуль-фрейма smile.gif
Цитата
А сам движок, как он работает *? Неужели ни кто здесь чата не делал на РНР ?

почти.... начал, но времени нет.... тоже собрался летом писать. а насчет работы посмотри движок чата
http://chat.php.spb.ru - навороченный, но есть все smile.gif

Автор: MuToGeN 11.6.2003, 10:14
Цитата
А сам движок, как он работает
Есть таблица в БД с как минимум тремя полями: кто сказал (ник или ID зарегистрированного пользователя), когда сказали (удобнее всего брать для этих целей таймстемп), и, собственно, что сказали. Запрос типа
SELECT * FROM chat_table WHERE time > UNIX_TIMESTAMP() - 10;
вернет все сказанное за последние 10 секунд (например, если обновление окна чата - каждые 10 сек., то это будут те самые данные, которые надо будет дописать в главное окно из обновляемого фрейма.
Запрос типа
DELETE FROM chat_table WHERE time < UNIX_TIMESTAMP() - 3600;
удалит все сказанное, кроме сказанного за последний час.

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

Автор: Master 11.6.2003, 10:23
Это-то понятно только немного не корректно.
Например человек нажал кнопку обновить а ты ему smile.gif
Так что надо делать ID_того_что_сказали и WHERE ID_того_что_сказали > ID_того_уже_показали(обновляется у пользователя) AND время

Нооо.
Чеовек же жаваскриптом интересуется, который из обновленного фрейма

Автор: MuToGeN 11.6.2003, 10:35
Master, я говорил, что это самый простой способ. А если вопрос по JS, тогда зачем открывать топик в разделе по PHP?

Автор: Master 11.6.2003, 10:58
Нуууу. Просто возник вопрос про легенькое обновление вот и все.

Автор: IZ@TOP 11.6.2003, 12:12
Master Ты не прав ! Я как раз движком интересовался (САБЖ прочти) ! а жава это так между делом ...

А я вот хочу на файловой системе сделать чат (убого наверное получится ...)... мысль я понял ... наверное пока буду делать простенький ...

Автор: Master 11.6.2003, 12:34
Если на файловой системе, то возьми можеш взять мой класс для обработки таблиц.

http://code.msk.ru/author/php_class/parser_tables/1_0/

Автор: IZ@TOP 11.6.2003, 12:56
Master Спасиб тебе, но у меня свой есть ... я им пользуюсь так как уже привык, да и другим людям в нем разобраться сложнее smile.gif

Автор: HalkaR 12.6.2003, 18:36
Цитата
А я вот хочу на файловой системе сделать чат (убого наверное получится ...)... мысль я понял ... наверное пока буду делать простенький ...
Медленно слишком получится. В принципе это единственная проблема. А так никакой разницы с БД нет. Ну и с доступом, записью и чтением файла проблема будет.

Автор: Yaki 14.6.2003, 02:13
a ti....MYSQL ...za odno i ...mysql u nauchishsya.....vse ravno esli znaesh php i ne znaesh MySQL togda...i PHP ne znaesh wink.gif)) ( blizko k serdcu ne prinimayte ;) )

Автор: Master 16.6.2003, 09:46
А кто вам сказал что мы не знаем MySQL?

Аааа. То есть если есть альтернатива для более гибкого решения в обход MySQL, то это уже клятвопреступление. Да?!

Автор: IZ@TOP 16.6.2003, 11:25
Цитата
a ti....MYSQL ...za odno i ...mysql u nauchishsya.....vse ravno esli znaesh php i ne znaesh MySQL togda...i PHP ne znaesh )) ( blizko k serdcu ne prinimayte ;) )

Да ? Кто сказал что мы не знаем ?!!! Мы все знаем ... просто не у всех есть деньги на то чтобы хостинг держать да еще и за MySQL платить ... а вот попробовать обойтись без него куда сложнее чем с ним ... сам попробуй ...

Автор: HalkaR 16.6.2003, 11:39
Iz@top в принципе можно найти бесплатный хостинг с MySQL - я даж знаю один-два.

Автор: Master 16.6.2003, 11:59
HalkaR Я тоже знаю. h1.ru и flashmaster.ru, а ещё знаеш? Напиши.

Автор: IZ@TOP 16.6.2003, 12:26
Цитата
h1.ru

Теперь уже h10.ru, у меня там уже есть - ultra.h10.ru ... там надо заявить зачем ... к тому же там у них дурацкий такой баннер, он куки писать мешает ...

А вообще есть очень хороший хостинг который почти все поддерживает, и MySQL тоже ... но чето меня там ни как не регнут ... http://hostmos.ru

Автор: arial 16.6.2003, 20:33
Цитата(Iz @ 16.6.2003, 13:26)
А вообще есть очень хороший хостинг который почти все поддерживает, и MySQL тоже ... но чето меня там ни как не регнут ... http://hostmos.ru

Там мускул за бабки.

Автор: Yaki 16.6.2003, 22:29
xe-xe..... денег нет, и ума нет confused.gif ;)
брат поствь на своём локалхосте Апач+MySQL+php..... и все пиши себе свой чат на здоровье.... когда закончиш , вот тогда уже надо будет думать о хостинге smile.gif

Автор: IZ@TOP 17.6.2003, 08:38
Yaki слыш брат ! Ты поакуратнее с выражениями, на счет ума и денег ... у меня на локале стоит Internet Information Services 5.0 + PHP (CGI) 4.1.2 + MySQL 1.4.7 и все зашибись работает ! И кто вообще сказал что я MySQL не знаю ? И то что денег нет ? Но меня все равно не доперает 5$-20$ платить за бд ...

А ты то хоть сам чего такого умеешь ? Чтоб так говорить ?!

Автор: IZ@TOP-TM 17.6.2003, 17:59
У меня еще и 2003 server стоит, а там IIS 6 котрй работает почти так же как и Apache, так что ты н прав во многом, точнее говоря - почти во всем !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Автор: Wowa 20.6.2003, 00:46
Цитата
я спросил можно картинку оставить.. и Admin позволил

Yaki, Ты спрашивал не про картинку, а про надпись. Картинку никто не позволял оставлять.

А если еще раз будешь замечен в употреблении нецензурных выражений, а также в каком-либо нарушении правил форума(http://forum.vingrad.ru/index.php?act=SR&f=27) - получишь бан.


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

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)