我创建了一个电子邮件验证链接,该链接仅在发送邮件后的 10 分钟内有效,但我的代码如下所示无效。
等等,我在 StackOverflow 上展示了所有相关的线程,当然我得到了与问题相关的相同帖子,但我也做了那个结果答案,但它对我不起作用,所以我发布了这个问题,可能有人有同样的问题,它会有所帮助给别人。
请不要将其标记为重复和处于审核模式,并尝试理解我的查询。
请帮助我如何解决这个问题以及什么是正确的代码。:(
我的代码如下:-
其他代码
date_default_timezone_set('Asia/Kolkata');
tokenExpire formats: (new DateTime('+10 minutes'))->format('Y-m-d H:i:s')
数据库结构[名称作为注册]
-----------------------------------------------------
Email | token | tokenExpire |
----------------------------------------------------
abcd@domain.com | {randNum} | 2019-10-19 09:42:10 |
-----------------------------------------------------
PDO 声明
$sql = $con->prepare("SELECT `Email`,`token` FROM `signup` WHERE Email= :1 AND token= :2 AND tokenExpire > NOW()");
$sql->execute(array(
':1' => $emailid,
':2' => $tokenum
));
if ($sql->rowCount() > 0) { echo "Link Is Valid"; }
else { echo "Link Expired"; }
我希望它必须代表我的代码显示时间过期或有效信息,但它不起作用,并且即使时间过去也显示链接有效。