0

date("Y-m-d H:i:s")トークンとフォーマットで保存された日付を使用するパスワード回復コードを書いています2012-09-06 18:59:53。以下のコードを使用して、ユーザー ID のトークン キーが存在するかどうかを確認します。

$sql = mysql_query("SELECT * FROM `recoveryemails` WHERE `UserID` = '$uid' and `Key` = '$key' and `expDate` >= '$curDate'");

PHP を使用して expDate を取得した後、3 日以上経過しているかどうかを確認するために、別の条件を追加する必要があります。そのPHPコードを手伝ってくれる人はいますか?

4

3 に答える 3

3

MySQL ではもっと簡単です。WHERE ... AND expdate >= DATE_SUB(NOW(),INTERVAL 3 DAY)

ただし、どうしても PHP で行う場合は、次のものが必要になります。

$threedaysago = strtotime("-3 days");
$expdate = strtotime($row['expDate']);
if( $expdate >= $threedaysago) { /* more recent than three days ago */ }
于 2012-09-03T21:49:25.350 に答える
0

MySQL では

expDate > DATE_SUB(NOW(), INTERVAL 3 Days)
于 2012-09-03T21:45:59.453 に答える
0

MySQL の日付結果を strtotime() でラップし、strtotime('- 3 days') と比較するだけです。

于 2012-09-03T21:48:22.900 に答える