@ImVeryStupid

Как слушать бд что бы синхронизировать с ней страницу?

Пробую отображать изменения в базе сразу на странице.
Делаю простой запрос

function refresh(){
    $.getJSON('get.php', function(response) {
        $.each(response, function(k,v) {
            $('#' + v.place).text(v.price);
        });
    });
}

срабатывает как надо.

Хотел обернуть в
setInterval(refresh(), 1000);
но всё равно ф-я вызывается один раз при загрузки страницы.
  • Вопрос задан
  • 39 просмотров
Решения вопроса 2
l3ftoverz
@l3ftoverz Куратор тега jQuery
Люблю Финский металкор и ищу работу.
Нужно так:
setInterval(refresh, 1000);

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

Более логичным сделать веб-сокет соединение, чтобы не клиент бегал раз в секунду на сервер, а чтобы сервер любезно присылал на клиент событие с данными только по факту их обновления.
Ответ написан
joeberetta
@joeberetta
Читай: https://epdf.pub/google-for-dummies.html
Потому что вы неверно используете setInterval.
Передайте refresh вместо refresh()

Подробнее про таймеры в js ищите в гугле
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы