Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php或javascript会话规则弹出窗口_Javascript_Php_Session_Popup_Magnific Popup - Fatal编程技术网

php或javascript会话规则弹出窗口

php或javascript会话规则弹出窗口,javascript,php,session,popup,magnific-popup,Javascript,Php,Session,Popup,Magnific Popup,我刚刚用放大弹出窗口创建了一个小狗。我现在必须设置会话规则: 弹出窗口必须在用户登陆网站5秒后出现,并且在会话的剩余时间内不显示 对于每个用户的会话,弹出窗口必须出现5次:只要用户不对弹出窗口执行任何操作或用户关闭弹出窗口5次,弹出窗口就不必再出现 你能帮我吗?提前谢谢 下面是一个简单的解决方案,但这取决于站点的设置方式,其他页面加载和/或ajax调用可能会增加计数器,因此请注意何时/何地增加会话变量$\u session['show\u popup\u count'] <?php s

我刚刚用放大弹出窗口创建了一个小狗。我现在必须设置会话规则:

  • 弹出窗口必须在用户登陆网站5秒后出现,并且在会话的剩余时间内不显示

  • 对于每个用户的会话,弹出窗口必须出现5次:只要用户不对弹出窗口执行任何操作或用户关闭弹出窗口5次,弹出窗口就不必再出现


你能帮我吗?提前谢谢

下面是一个简单的解决方案,但这取决于站点的设置方式,其他页面加载和/或ajax调用可能会增加计数器,因此请注意何时/何地增加会话变量
$\u session['show\u popup\u count']

<?php
session_start();
if(isset($_SESSION['show_popup_count'])){
    //handle completely new session here
    $_SESSION['show_popup_count']=0;
}
$_SESSION['show_popup_count'] += 1;

//expose value to javascript
?><script type="text/javascript">
    var popupCounts = <?php echo $_SESSION['show_popup_count']; ?>;
</script><?php
.... //continue on with rest of code

var popupCounts=;

你好,用户3299379谢谢你的回答,我不太实际,你能再帮我一次吗?我安装了插件放大弹出窗口,这是我在index.php中包含的代码:很抱歉,如果我将它放在pastebin上,但我无法正确格式化它,它分为html和javascript。非常感谢,现在我如何将我的代码(html和Js)与您给我的代码结合起来?谢谢。问题是,当我在页面之间移动时,会话计数也会增加,然后每次弹出窗口时加载。我想要的是,当我进入该网站时,我会对弹出窗口收费,我呆在里面的所有时间都不得加载,这会增加计数,只有当我离开该网站并返回时,才必须应用计数。我放在index.php中的代码。对不起,我的英语如果这回答了您的问题,请标记为最佳答案php将会话存储在cookie中,即使会话在服务器上已过期,浏览器也会记住它,并且何时会分配新会话。如果您想控制会话时间,请查看以下答案
if(popupCounts<6){
    //code to show popup here
}