Что-то ругается на скобки:
alert(<?php echo time() * 1000 ?> +'\n' + new Date()) |
Спасибо за решение
а помошникам стыд и срам.... от их заумства они не выглядят умными
|
Это на сервере
<?php echo date('H:i:s d.m.Y'); ?> Код js, посылающий каждую секунду ajax запрос let test = document.querySelector('#test'); document.addEventListener('DOMContentLoaded', () => { window.setInterval(timer, 1000); }); async function timer() { let promise = await fetch('/ajax.php/'); let data = await promise.text(); test.innerHTML = data; } |
Цитата:
|
laimas, а вдруг у клиента на компьютере часы идут неправильно? :lol:
P.S. На самом деле на компьютере часы таки могут идти неправильно, сам лично столкнулся с этим когда в ноутбуке сдохал батарейка CMOS - часы отставали за час на ~5-10 минут. Но это слишком уникальная ситуация чтоб о ней заботиться.) |
Цитата:
|
laimas, а если нужно точное время? Читай далее...
АндрейD, достаточно получить время один раз, все остальные времена вычисляются на его основе. Вы можете получить с сервера времени(или со своего сервера) метку времени (UTC timestamp) и её передать в конструктор Date. Так вы получите точное время на тот момент. Пусть оно хранится в константе serverTime. Вам сразу же надо создать константу со временем на устройстве пользователя, например, пусть это будет clientTime. Вычислив разницу между двумя этими временами, вы узнаете на сколько отличается время клиента от точного! const dateDiff = serverDate.getTime() - clientDate.getTime(); Для того, чтобы получать впоследствии точное время, вам нужно прибавлять эту разницу ко времени клиента const date = new Date(Date.now() + dateDiff); |
Цитата:
|
Цитата:
|
Цитата:
Если у клиента разница в 5 секунд, то это нерадивый клиент, если у сервера ошибка в 5 секунд, то это нерадивый сервер, если у обоих ошибка, то нерадивы оба. Но причем тут время, часовые пояса и т.д.? Использование UTC будет иметь только одно отличие от расчета на разность часовых поясов - в UTC нет перевода на зимнее/летнее время, а вот часовой пояс будет смещаться. Но если сервер отдает свой часовой пояс, то это будет скорректировано и у него. Все остальное, это болтовня. |
Часовой пояс GMT +3, время: 22:04. |