利用cookies实现窗口只弹一次的php代码

网络整理 - 08-10
因为网站比较多,而且多是图片站,PV超级高,但是弹窗又不能每刷新一个页面就弹,没办法就自己搞定,原理就是利用cookies,最大的好处就是不影响用户浏览网站,不敢独享,代码如下:

<?php
//以下代码无需修改
foreach($_REQUEST as $_k=>$_v)
{
        if( strlen($_k)>0 && eregi('^(cfg_|GLOBALS)',$_k) && !isset($_COOKIE[$_k]) )
        {
                exit('Request var not allow!');
        }

}
function _RunMagicQuotes(&$svar)
{
        if(!get_magic_quotes_gpc())
        {
                if( is_array($svar) )
                {
                        foreach($svar as $_k => $_v) $svar[$_k] = _RunMagicQuotes($_v);
                }
                else
                {
                        $svar = addslashes($svar);
                }
        }
        return $svar;
}
foreach(Array('_GET','_POST','_COOKIE') as $_request)
{
        foreach($$_request as $_k => $_v) ${$_k} = _RunMagicQuotes($_v);
}
//以上代码无需修改
//判断弹窗的cookies
if(!isset($ad))
{
//3600是失效时间,可以自行修改
        setcookie("ad", "1", time()+3600);
        //输出弹窗代码
        //请自行替换,在此之前本页面请勿输出任何代码,否则无法设置cookies
        echo 'document.writeln("<script language=\"javascript\" src=\"http:\/\/www.×××.com\/show.php?id=****\"><\/script>")';

}
else

{
        //什么也不做
}
?>



  复制以上代码保存为popup.php,替换里面的弹窗地址即可,然后在网站每个页面上放置以下代码(存放路径请自行修改):

<script language="javascript" type="text/javascript" src="/存放路径/popup.php"></script>