2016-12-04 12 views
-1

私は、サーバーの時刻、またはヨーロッパ/ロンドンまたはヨーロッパ/リスボンの時刻をエコーし​​たいと思います。 これは私のコードですが、何らかの理由でシステムに何かの時間が表示されています。私は意味、私のPCで私が正しい時刻を参照してくださいが、時間遅れているタブレットでは、タブレットオブジェクト指向 の時間が、ここでのコードのショー:エコー時間が働かない

 <?php 
    $date = new DateTime("now", new DateTimeZone('Europe/Lisbon')); 
    $today = getdate($date); ?> 
    <script> 
     var d = new Date(Date.UTC(<?php /*echo $today['year'].",".$today['mon'].",".$today['mday'].",".$today['hours'].",".$today['minutes'].",".$today['seconds'];*/ echo $date->format('Y,m,d,H,i,s'); ?>)); 
     setInterval(function() { 
      d.setSeconds(d.getSeconds() + 1); 
      $('#timer').text((d.getHours() +':' + d.getMinutes() + ':' + d.getSeconds())); 
     }, 1000); 
    </script> 
    <p><div id="timer"></div></p> 
+0

JavaScriptはクライアント側であるため、当然のことながらクライアント側の日付情報が表示されますが、PHPはサーバー側であり、自然にサーバー側の日付を表示します。 PCとタブレットで同じホストを使用してテストしていますか? –

+0

@CharlotteDunoisあなたはそれを答えるべきです:)しかし、それは時間帯を考慮していません –

+0

ええ..ウェブサイトはすでに..ホストされています.. "ライブオンライン" xD – Ruth

答えて

0

あなたはJavaScriptを

を使用してそれを行うことができます

例:

setInterval(function() { 
 
    var date = new Date(); 
 
    var H = date.getHours(); 
 
    var M = date.getMinutes(); 
 
    var S = date.getSeconds(); 
 
    $('#timer').text(H+':'+M+':'+S); 
 
},1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="timer"></div>

+0

このコードでは、タイムゾーンを考慮していません。 –

+0

**これは問題の解決策ではありません**。問題は、コンピュータやデバイスの時間が変わると、Webページの時間も変化することです**。ユーザーはサーバーから時刻を取得する必要があります。あなたが表示している時間も私のシステムクロックで変わります!これはすでに彼が手に入れていたものです! –

0
<?php 
    $date = new DateTime("now", new DateTimeZone('Europe/Lisbon'); 
    $today = $date->format('Y-m-d H:i:s'); 
?> 

    <div id="timer"></div> 

    <script> 
    var d = new Date('<?php echo $today ?>');  
    setInterval(function() { 
     d.setSeconds(d.getSeconds() + 1); 
     document.getElementById('timer').innerHTML=(d.getHours() +':' + d.getMinutes() + ':' + d.getSeconds()); 
    }, 1000);  
    </script> 
+0

ようこそ。これが正しい答えだと思う理由を説明してください。 –

関連する問題