我正在编写使用令牌和以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'");
我需要在检索expDate之后添加另一个条件,以使用PHP检查它是否超过3天。任何人都可以帮我解决这个PHP代码吗?
答案 0 :(得分: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 */ }
答案 1 :(得分:0)
在MySQL中
expDate > DATE_SUB(NOW(), INTERVAL 3 Days)
答案 2 :(得分:0)
将MySQL日期结果包装在strtotime()中并与strtotime(' - 3天')进行比较