操作后10分钟更新数据库

时间:2016-01-30 06:35:47

标签: php mysql

目前我有一个按钮,登录用户可以按每当 10 分钟按当前时间+ 10分钟并将其插入数据库中。

public function setCooldown($address){
    $extra = strtotime("+ 10 minutes");
    $cooldown =  date("h:i:s", $extra);

    $query = $this->pdo->prepare("UPDATE users SET cooldown = '$cooldown'     
                                  WHERE address = '$address'");

    if($query->execute()){
        return true;
    }else return false;
}

然后使用以下if语句检查是否已经过了10分钟:

    if(strtotime($cooldown) >= time()){
        return true;
    }else return false;

$cooldown从数据库中获取冷却时间。

问题:

  • 如果您点击 12:55 (上午/下午)的按钮,cooldown将设置为 1:05 (上午/下午)

自12:55> = 1:05后,将不会有冷却时间。

  • 如果您点击 12:45 (上午/下午)的按钮,cooldown将设置为 12:55 (上午/下午)< / LI>

如果你忘记点击下一个,让我们说在冷却消失后10分钟,time()将是1:05,冷却时间将是接近12小时

问题:无论什么时候,如何将冷却时间设定为10分钟?

备注:

  • cooldown在我的数据库中设置为varchar

感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

我刚检查了你的代码。你应该使用24小时格式的日期(&#39; H:i:s&#39;)。希望这能解决你的问题。 请查看以下链接: -

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

http://www.w3schools.com/php/func_date_date.asp