0

PHP では、次を使用して 30 分が経過したかどうかを確認しています。

if(strtotime($rowFromMysql['last_visit']) < (time() -(30*60))) {
        $database->query("UPDATE `visit_count` SET visitCount = visitCount + 1, cookieId = '$sid', last_visit='$idag' WHERE cookieId = '$sid' AND ipaddress = '$ip' AND user_id = '$ssid'");

    }

Nodejsで同じチェックを行うにはどうすればよいですか?

MySQL から同じデータを選択していますが、PHP ではなく nodejs で選択していますが、30 分が経過したかどうかを確認する方法がわかりません。

何か案は?

4

1 に答える 1

5

Dateobjectsを使用してコードに似たことができます:

var lastVisit = new Date(getLastVisit());

var thirtyMinutes = 30 * 60000; // 60000 being the number of milliseconds in a minute
var now = new Date();
var thirtyMinutesAgo = new Date(now - thirtyMinutes);

if (lastVisit < thirtyMinutesAgo) {
  updateVisitCount();
}

getLastVisit()データベースにクエリを実行し、最終訪問日を次のいずれかとして返す必要があります。

  • value: 1970 年 1 月 1 日 00:00:00 UTC (Unix エポック) からのミリ秒数を表す整数値。
  • dateString: 日付を表す文字列値。文字列は、解析メソッド (IETF 準拠の RFC 2822 タイムスタンプ) によって認識される形式である必要があります。
于 2013-02-21T23:22:38.013 に答える