摘要:帝国如何实现调用用户的访问记录,今天跟着小编来看一看吧,效果图如下一:在e/class/userfun.php中加://--------------------开始------------------
function user_SetCook($nam...
帝国如何实现调用用户的访问记录,今天跟着小编来看一看吧,效果图如下
一:在e/class/userfun.php中加:
//--------------------开始------------------
function user_SetCook($name, $id, $time = 0, $num = 10) { //cookie名称 ID 时间戳 数量
if (!$id) {
printerror2('不存在的记录', $_SERVER['HTTP_REFERER']);
}
$prodq = $id . '|';
$projilu = getcvar($name);
if ($projilu) {
$prozuhe = $prodq . $projilu; //把新浏览的放在第一
$pro_arr = explode('|', $prozuhe);
$new_arr = array_merge(array_unique($pro_arr)); //去除重复,重新索引下标
foreach ($new_arr as $key => $val) {
if (($key < $num) && $val) {
$pro.= $val . '|';
}
}
} else {
$pro = $prodq;
}
esetcookie($name, $pro, $time);
//esetcookie($name,'',0);
//print_r($_COOKIE);
}
function user_GetCook($name, $tbname, $num = 10) { //名称 数据表 数量
global $empire, $dbtbpre;
if (preg_match("/^[0-9|]+$/", getcvar($name))) {
$jilu_all = substr(getcvar($name), 0, -1); //1|2|3
$jilu_arr = explode('|', $jilu_all);
foreach ($jilu_arr as $k => $v) {
$jilu_idin.= (int)$v . ',';
}
$jilu_idin = substr($jilu_idin, 0, -1); //1,2,3
$sql = $empire->query("select id,title,titlepic,titleurl from {$dbtbpre}ecms_{$tbname} where id in ({$jilu_idin}) order by find_in_set(id,'{$jilu_idin}') limit {$num}"); //按id in 里面的排序
while ($jilu_r = $empire->fetch($sql)) {
$titleurl = sys_ReturnBqTitleLink($jilu_r);
echo '<li><a href="' . $titleurl . '">' . $jilu_r['title'] . '</a></li>'; //此处是修改样式需要图片自己加
}
} else {
echo '暂时浏览记录!';
}
}
//--------------------结束------------------
二:在内容页模版最上面加:
<?=user_SetCook('cookiepro',$navinfor[id],0,10);//cookie名称可以自己定别重复 ID 时间戳 数量 ?>
三:在要显示的地方加一句:
<?=user_GetCook('cookiepro','shop',10);//名称 数据表名 数量 ?>
<p>//--------------------开始------------------<br />function user_SetCook($name, $id, $time = 0, $num = 10) { //cookie名称 ID 时间戳 数量<br /> if (!$id) {<br /> printerror2('不存在的记录', $_SERVER['HTTP_REFERER']);<br /> }<br /> $prodq = $id . '|';<br /> $projilu = getcvar($name);<br /> if ($projilu) {<br /> $prozuhe = $prodq . $projilu; //把新浏览的放在第一<br /> $pro_arr = explode('|', $prozuhe);<br /> $new_arr = array_merge(array_unique($pro_arr)); //去除重复,重新索引下标<br /> foreach ($new_arr as $key => $val) {<br /> if (($key < $num) && $val) {<br /> $pro.= $val . '|';<br /> }<br /> }<br /> } else {<br /> $pro = $prodq;<br /> }<br /> esetcookie($name, $pro, $time);<br /> //esetcookie($name,'',0);<br /> //print_r($_COOKIE);<br /> <br />}<br />function user_GetCook($name, $tbname, $num = 10) { //名称 数据表 数量<br /> global $empire, $dbtbpre;<br /> if (preg_match("/^[0-9|]+$/", getcvar($name))) {<br /> $jilu_all = substr(getcvar($name), 0, -1); //1|2|3<br /> $jilu_arr = explode('|', $jilu_all);<br /> foreach ($jilu_arr as $k => $v) {<br /> $jilu_idin.= (int)$v . ',';<br /> }<br /> $jilu_idin = substr($jilu_idin, 0, -1); //1,2,3<br /> $sql = $empire->query("select id,title,titlepic,titleurl from {$dbtbpre}ecms_{$tbname} where id in ({$jilu_idin}) order by find_in_set(id,'{$jilu_idin}') limit {$num}"); //按id in 里面的排序<br /> while ($jilu_r = $empire->fetch($sql)) {<br /> $titleurl = sys_ReturnBqTitleLink($jilu_r);<br /> echo '<li><a href="' . $titleurl . '">' . $jilu_r['title'] . '</a></li>'; //此处是修改样式需要图片自己加<br /> <br /> }<br /> } else {<br /> echo '暂时浏览记录!';<br /> }<br />}<br />//--------------------结束------------------</p>
免责/版权声明:
本篇文章给大家谈谈帝国cms常见问题:实现用户当前访问的历史记录(产品浏览记录)以及帝国cms对应的知识,感谢你花时间阅读本站内容,希望对各位有所帮助,你也可以查看更多关于帝国cms的信息。
1、所有来源标注为 ECMSPLUS/zwcms.com的内容版权均为本站所有,若您需要引用、转载,只需要注明来源及原文链接即可,如涉及大面积转载,请来信告知,获取授权。
2、本站所提供的文章资讯、软件资源、素材源码等内容均为作者提供、网友推荐、互联网整理而来(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考,如有侵犯您的版权,请联系我们,本站将在三个工作日内改正。
3、若您的网站或机构从本站获取的一切资源进行商业使用,除来源为本站的资料需与本站协商外,其他资源请自行联系版权所有人。
4、 ECMSPLUS/zwcms.com不保证资源的准确性、安全性和完整性,请您在阅读、下载及使用过程中自行确认,本站亦不承担上述资源对您或您的网站造成的任何形式的损失或伤害
5、未经 ECMSPLUS/zwcms.com允许,不得盗链、盗用本站资源;不得复制或仿造本网站,不得在非 ECMSPLUS/zwcms.com所属的服务器上建立镜像, ECMSPLUS/zwcms.com对其自行开发的或和他人共同开发的所有内容、技术手段和服务拥有全部知识产权,任何人不得侵害或破坏,也不得擅自使用。
6、互联网的本质是自由与分享,我们真诚的希望,每一份有价值的正能量能够在互联网中自由传播,能够为每一个网站提供动力。