header('Refresh: 5;Location: chat1.php');
тоесть я перегружаю каждых 5 сек всю страницу. Даже при моем быстром соиденение он заметно медлинный. Вопрос такой как обычно действуют чаты реагируя на меседж без перегрузки всей страницы
Спустя 3 часа, 15 минут, 14 секунд (7.05.2012 - 16:16) VolDroN написал(а):
javascript.
Ajax`ом опрашивается сервер например каждые 5 секунд, сервер отвечает есть ли новые сообщения, если есть отправляет и они автоматически на страницу постатся
Ajax`ом опрашивается сервер например каждые 5 секунд, сервер отвечает есть ли новые сообщения, если есть отправляет и они автоматически на страницу постатся
Спустя 15 минут, 52 секунды (7.05.2012 - 16:32) Nikitian написал(а):
Ожидать данные можно через comet - это будет быстрее и менее напряжно для сервера.
Спустя 5 минут, 39 секунд (7.05.2012 - 16:37) inpost написал(а):
А ещё круче - через соккеты. Можно на node.js + socket.io
Спустя 4 часа, 23 секунды (7.05.2012 - 20:38) Invis1ble написал(а):
! |
Invis1ble |
Спустя 34 минуты, 24 секунды (7.05.2012 - 21:12) sergeiss написал(а):
Цитата (Гость_Alex @ 7.05.2012 - 15:00) |
Вопрос такой как обычно действуют чаты реагируя на меседж без перегрузки всей страницы |
"Я вам не скажу за всю Одессу..."
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
А можно - периодически обновлять окно с сообщениями, которое сделано в iframe. Документ, который внутри этого "айфрейма", можно апдейтить с некоторой периодичностью (посредством того же рефреша, как ты уже написал сам в самом начале). При этом основная часть страницы не будет изменяться. В частности, когда пишешь сообщение, то ничего никуда не исчезнет.
Минусы - если нет сообщений, то все равно будет трафик, будут загружаться уже просмотренные сообщения, а если есть сообщения, то они появятся не сразу же после написания, а только после обновления. Слишком часто нельзя обновлять (большой трафик будет), слишком редко нельзя обновлять (большие опоздания сообщений).
Плюсы - нету зависимости от включенности JS. "Плюс" несколько сомнительный, вобщем-то.