@rusgayfer

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

Вывожу количество строк (сообщений) из базы. Но когда там новые данные, чтобы увидеть новый результат приходится обновлять страницу. Как сделать чтобы если в базе появилась новая строка то обновлялась цифра на сайте в реальном времени?

Код вывода такой
$stmNew = $db->dbStream->prepare("SELECT COUNT(*) FROM `groups`");

try {
    $stmNew->execute();
} catch (PDOException $error) {
    trigger_error("Ошибка при работе с базой данных: {$error}");
}
$allsgroups = $stmNew->fetch(PDO::FETCH_ASSOC);
$allgroups = implode(",", $allsgroups);
$allgroups = $allgroups;


Потом вывожу на tpl таким способом
$template->templateSetVar('allgroups', $allgroups); // {allgroups}
  • Вопрос задан
  • 468 просмотров
Пригласить эксперта
Ответы на вопрос 2
skobkin
@skobkin
Гентушник, разработчик на PHP и Symfony.
WebSocket.
Только лучше это не через базу делать, а через шину сообщений. Когда что-то добавляется, генерируется событие и отправляется сообщение, которое сервер вебсокетов забирает и раздаёт всем клиентам, которым оно нужно.
Правда, тут есть приличное поле для оптимизации в зависимости от деталей задачи. Например, если у вас происходит 100 добавлений в секунду, то схему нужно дорабатывать.
Ответ написан
Комментировать
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
Javascriptом
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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