0

ユーザーが、毎日 H:mm AM/PM にいくつかの日次レポートを送信するように設定できる機能が必要です。

次に、ユーザーに対して指定された時刻になったときに、サーバー上で何時になるかを判断する必要があります。たとえば、ユーザーがメールを送信したい時刻として午後 5 時を入力した場合、サーバー上で現在午後 10 時であるときに現在の午後 12 時である場合、それが何時になるかを判断したいと思います。ユーザーの午後 5 時のサーバー。

PHP/Javascriptを使用してこれを達成するにはどうすればよいですか?

現在のユーザーの時刻の MySQL TIME 文字列 (hh:mm:ss など) を JavaScript を介して生成し、それをサーバーに渡し、この文字列を mysql クエリで使用して TimeDiff() を実行することを考えていました。それとも何か良い方法はありますか?

注: クライアントは、ユーザーの現在のタイムゾーンではなく、ユーザーのクロック時間を使用する必要があることを指定しています。

4

2 に答える 2

3

URLの最後にあるAjaxクエリで、次のようにします。

var ts = Math.round((new Date()).getTime() / 1000);
var url= "http://mysite.com/?usertime="+ts;

次に、サーバー側で次のようなものを使用できます

$EstimatedTimeDifference = time()-$_GET['usertime'];

これで、サーバーとブラウザーの時間の間に秒単位の時間差ができました(大まかに言って、スクリプトがtime()を生成するのにかかった時間を無視します)。そこから、それはかなり簡単なはずです。それを丸めて3600で割ると、時間差などが得られます。

それはあなたを動かすのに十分な情報ですか?

于 2012-08-21T19:45:07.887 に答える
1

UTC時間を使用して、リンゴとリンゴを比較します。

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date/UTC

http://php.net/manual/en/function.gmdate.php

于 2012-08-21T19:47:37.043 に答える