我创建了一个横幅,希望它在 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/