php - 4 分钟后出现横幅

标签 php javascript ajax

我创建了一个横幅,希望它在 4 分钟后出现。 我使用 modalbox 来显示横幅。

我需要类似的东西

If customers_session_time > 4 minutes then show me the banner

但是如果我将customers_session_time存储到数据库并在PHP上编写一些代码,那么用户将必须刷新页面才能看到横幅。

如果我使用javascript的setTimeout(),每次用户刷新页面时,你的超时时间都会刷新...

还有别的办法吗?

最佳答案

不是一个非常完整的代码,但你可能会明白一个想法

<?php
session_start();

if( empty($_SESSION['time_session_started']) ){
    $_SESSION['time_session_started'] = time();
}

$timeout = $_SESSION['time_session_started']+4*60 - time();

if( $timeout<0 ){
    $timeout = 0;
}
?>
<script language="JavaScript">
<?php if( $timeout ){ ?>
setTimeout(function (){
    showBanner();
},<?php echo $timeout*1000; ?>);
<?php }else{ ?>
showBanner();
<?php }
</script>

关于php - 4 分钟后出现横幅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9225434/

相关文章:

PHP - 使用 explode() 函数为关联数组赋值

javascript - 将 div 附加到网页 - 使用 ajax 发布数据

javascript - angularjs防止XSS攻击

php - 在 while 循环中使用 array_sum()

javascript - 提交表单后计算所有动态项目的总数,包括复制的项目

javascript - Jquery 获取 .each 循环内 slider 的值

javascript - 如何使用 jQuery 检查数字是否由数字组成

javascript - jquery 数据表包含空白表头

javascript - 在 Javascript 中使用 Ajax 检索 JSON 数据

php - Laravel 5.6升级后Redis "Error while reading line from the server."