Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Часы на сайт php+js (https://javascript.ru/forum/server/78190-chasy-na-sajjt-php-js.html)

ydav-07 07.08.2019 16:02

Часы на сайт php+js
 
Здравствуйте. Я совсем не силён в фронтенде и прошу помощи. Задача: сделать часы на странице html, которые показывают единое время для всех пользователей. Что сделал: часы на js и php, которые отправляют запрос на сервер каждую секунду и обновляют информацию на странице. Очень хочу сделать так, чтобы запрос был один, а дальше работал скрипт без обращения к серверу, но не могу разобраться из-за не хватки знаний. Спасибо за помощь.

файл php:
<?php echo date("G").":".date("i").":".date("s"); ?>

файл html:
<html>
<head>
<meta charset="utf-8">
<title>Часы</title>
<script>
window.onload = server_time;

function server_time(){
var req = new XMLHttpRequest();
req.open("GET","data_script.php",true);
req.onreadystatechange = function(){
document.getElementById("time_on_site").innerHTML = req.responseText;
}
req.send();
setTimeout("server_time()", 1000);
}
</script>
</head>
<body>
<div id="time_on_site"></div>
</body>
</html>

рони 07.08.2019 16:13

ydav-07,
https://javascript.ru/forum/misc/594...tml#post395951

ydav-07 07.08.2019 16:16

del

ydav-07 07.08.2019 16:16

del

ydav-07 07.08.2019 16:27

спасибо, но есть одно но. в дальнейшем, при перемещении на другой сервер, либо по каким-то другим причинам, нужно будет вручную новое время задавать. конечно бы хотелось, чтобы оно автоматом работало. Да и потом, я так понимаю, что если закрыть страницу, то при открытии её снова начнётся отсчёт с указанного времени.

рони 07.08.2019 16:29

Цитата:

Сообщение от ydav-07
нужно будет вручную новое время задавать

не понимаю

ydav-07 07.08.2019 16:36

var span = document.querySelector('.time') ;
fn(span, '16:28:41');// fn(span, '%uptime%');
я понял это как: начать время с указанного в этой строчке. если закрыть страницу, что опять стартует с этого времени. возможно я ошибаюсь и это работает не так?

рони 07.08.2019 17:07

Цитата:

Сообщение от ydav-07
fn(span, '%uptime%');

что не так?

ydav-07 09.08.2019 15:10

рони,извините, но я туплю уже несколько дней, пытаясь зпихнуть из php время в переменную uptime... может быть дадите совет, что делать или читать.. спасибо

рони 09.08.2019 15:39

ydav-07,
laimas вероятно может подсказать. я могу только гадать.
fn(span, '<?php echo date("G").":".date("i").":".date("s"); ?>');


Часовой пояс GMT +3, время: 09:23.