Получить значение базы данных без загрузки страницы в стиле AJAX / PHP / Facebook - PullRequest
1 голос
/ 20 декабря 2009

Мне интересно, может ли кто-нибудь показать или объяснить на примерах, как Facebook проверяет свою базу данных на наличие новых сообщений? Кажется, делать это периодически, без загрузки страницы. Как лучше всего добиться этого в скрипте PHP / MySQL / Jquery?

alt text

Любая помощь всегда ценится! Ура, Леа

Ответы [ 3 ]

4 голосов
/ 20 декабря 2009

Вы можете сделать это: usign Периодическое обновление

<span id="inbox-title"></span>


<script>

$.PeriodicalUpdater('/path/to/service', {
  method: 'get',          // method; get or post
  minTimeout: 1000,       // starting value for the timeout in milliseconds
  maxTimeout: 8000,       // maximum length of time between requests

}, function(data) {
   $('#inbox-title').html('you have ' + data + 'new messages');

});


</script>

другой вариант - связать событие onmousemove и сделать вызов ajax, когда счастье

0 голосов
/ 20 декабря 2009

Посмотрите на обратный Ajax с техникой COMET, это идеальное применение для него.

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

Никакие данные не передаются, пока xmlhttprequest и сервер ожидают, но закрытие и повторное открытие соединений может быть бременем для вашего сервера.

0 голосов
/ 20 декабря 2009

На самом деле есть «загрузка страницы», но это скрытый запрос, который не перезагружает отображаемую страницу. Посмотрите документацию по команде jQuery Ajax , чтобы узнать больше об одном из самых простых способов сделать это (особенно если вы уже упоминали об использовании jQuery).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...