成功提交表单后,我正在使用 PHP cookie 设置提交时间。
如果用户再次提交表单,那么我正在检查时间是否超过 24 小时。
如果它没有超过 24 小时,那么我将显示一条错误消息。因此,在 Chrome 浏览器中,它对我有用,代码如下:
成功提交表格后
$cookieName = 'submission_time';
$cokkieValue = time();
setcookie($cookieName, $cokkieValue, time() + (+60*60*24*30 ), "/");
如果用户再次提交表单
if(isset($_COOKIE['submission_time'])) {
$submissionTime = $_COOKIE['submission_time'];
$currentTime = time();
$timePassed = ($currentTime - $submissionTime ) / 60 * 60;
if($timePassed < ALLOWED_SUBMISSION_TIME ) {
echo "<div class='alert alert-warning'>You can record the sales after 24 hours! Please wait..</div>";
die();
}
}
现在,我再次使用 IE 浏览器提交表单,但它没有向我显示设置如下的警告消息:
您可以在 24 小时后记录销售额!请稍等..
有什么解决方法吗?
基本上,我想防止在 24 小时内多次提交。
慕容森