Как обновить текущую страницу просмотра клиента со стороны сервера? например, если я хочу принудительно обновить страницу, просматриваемую сейчас для всех клиентов, чтобы они могли просматривать новый контент. и я хочу сделать это обновление в то время, когда я хочу использовать PHP.
Является ли это возможным??
Используйте веб-сокеты. Вы можете использовать либо PHP-сокеты с этим или этим
Я думаю, что php Sockets потребует, чтобы у вас была версия PHP версии 5.3 или выше.
Если у вас нет PHP v5.3 или выше, вы можете использовать Node JS с Socket.io
Long Pooling также является одним из вариантов, но это не будет хорошим решением, учитывая количество запросов, которые получит ваш сервер. Также использование полосы пропускания пользователя будет высоким.
Вы можете получить поведение двумя способами:
WebSockets – если все ваши клиенты подключаются через веб-сокеты, у вас есть прямое соединение между клиентом и сервером. Вам нужно будет проявить творческий подход, но вы можете отправить команду в любое время, требуя обновления. Это требует, чтобы вы реализовали веб-сокеты в PHP http://socketo.me/ и JavaScript.
Опрос. Вы можете настроить клиента для отправки запроса AJAX каждые x секунд. Сервер отвечает значением bool, которое использует обработчик успеха AJAX, чтобы определить, нужно ли обновлять страницу.
Если вы хотите обновить страницу с определенным интервалом, включите ее в свой <head>
:
<meta http-equiv="refresh" content="5">
Измените «5» на любое количество секунд, которое вы предпочитаете.
Если вы хотите обновить только тогда, когда все изменилось, вам нужно будет задействовать Javascript на клиенте – например, запрос Ajax на URL-адрес, который спрашивает, есть ли новые данные с момента загрузки страницы, и при необходимости обновляется.