Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: автоматическое обновление страницы
 
 автор: Виктор 2008   (26.05.2008 в 01:08)
 
 

Я имел ввиду может ли сервер, сам посылать данные скрипту ... (javascript)
По логике php-сценарий этого делать не может ....
потому как он живет всего (по умолчанию максимум 30сек) да и расточительством наверное будет его держать его постоянно запущенным.

Я к примеру про то, что кто то написал сообщение в чат, (скажем оно добавилось в БД)
как другой пользователь СРАЗУ получит новые данные ?

Мне нужен сам алгоритм работы связки серверной работы (php+mysql) и javascript.

Понятно когда скрипт запрашивает данные у php-сценарию по реакции пользователя (любой) , или через задонное промежуток времени ....

В книги по ajax я такого не нашел ...
И вообще возможно ли такое ?

   
 
 автор: DEM   (26.05.2008 в 01:21)   письмо автору
 
   для: Виктор 2008   (26.05.2008 в 01:08)
 

Если чаты есть, то такое возможно :)
Да и как вы могли не найти такое в книге про АЯКС??? Сам AJAX-запрос будет почтив сегда одинаковый (создать переменную, сделать соединение с РНР-сркиптом и получить ответ)... Или я не правильно понял вопрос?

   
 
 автор: Виктор 20008   (26.05.2008 в 02:24)
 
   для: DEM   (26.05.2008 в 01:21)
 

>Если чаты есть, то такое возможно :)
>Да и как вы могли не найти такое в книге про АЯКС??? Сам AJAX-запрос будет почтив сегда одинаковый (создать переменную, сделать соединение с РНР-сркиптом и получить ответ)... Или я не правильно понял вопрос?

Вот такая вот книга :)
Вот я и думаю ... что про то что я говорю невозможно ...
Откуда javascript "узнает" что нужно создать запрос (то что данные в БД изменились) ?

   
 
 автор: Виктор 20008   (26.05.2008 в 03:05)
 
   для: Виктор 20008   (26.05.2008 в 02:24)
 

Вот я как раз и хотел узнать как к примеру это реализовано в чатах ?
Ну опять же проверкой через 0,1сек. скажем ... (отправкой повторного запроса через 0,1сек)

2ой вопрос
Если скажем не отправлять запросы каждые 0,1 сек то как работает php-сценарий?
AJAX -технология позволяет "ждать ответ" но как это ожидание реализуется?

На ум пока пришло обращение к БД ы цикле с задержкой по времени допустим 1сек.
т.е. по умолчание получим 29-30 обращений к базе данных. (поскольку время жизни скрипта по умочанию 30сек). Если есть что--то новое то отправляем данные.
Через 30 сек. javascript делает повторный запрос.

Вторая мысль такая :
при добавлении новой записи, отправит "ответы" всем (кто обратился в последнии 30 минут ). Такое мне кажется возможным, но как такое реализовывается ?

   
 
 автор: ONYX   (26.05.2008 в 08:29)   письмо автору
 
   для: Виктор 20008   (26.05.2008 в 03:05)
 

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

   
 
 автор: mihdan   (27.05.2008 в 11:29)   письмо автору
 
   для: Виктор 2008   (26.05.2008 в 01:08)
 

Вы хотите как тут

   
 
 автор: Виктор 20008   (27.05.2008 в 13:56)
 
   для: mihdan   (27.05.2008 в 11:29)
 

А как там ... ? если обновление через 0,5-1сек ... то все понятно а если реже ?

   
 
 автор: mihdan   (27.05.2008 в 18:50)   письмо автору
 
   для: Виктор 20008   (27.05.2008 в 13:56)
 

а какая разница?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования