Показать сообщение отдельно
  #3 (permalink)  
Старый 08.01.2020, 00:48
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

DenisUfa, например так...
(function online() {
    fetch("/counter.php").then(async response => {
        document.querySelector("#counter").textContent = await response.text();
    }).finally(() => {
        setTimeout(online, 2000);
    });
})();


Но лучше всего, чтобы данные обновлялись тогда, когда они реально поменяются. Это можно сделать при помощи EventSource (сервер присылает новое число пользователей) Ещё, конечно, можно при помощи WebSocket.

Сообщение от Rise
Это делается через AJAX.
Ну почему вы не сделали через него? Вы использовали XMLHttpRequest, что в принципе тоже имеет место быть и работает даже в самых старинных браузерах, но никакого AJAX в данном примере не существует, и в данной теме не нужен! Кстати твой пример покажет кол-во пользователей через 61 секунду после открытия страницы.
Ответить с цитированием