帝国cms内容页添加浏览记录或者浏览历史,商品浏览历史记录

实现浏览记录或者浏览历史,文章历史记录 实现浏览记录或者浏览历史,文章历史记录
第一步:先把内部代码放入userfun.php中,代码如下:

实现浏览记录或者浏览历史,文章历史记录

第一步:先把内部代码放入userfun.php中,代码如下:

<?phpxqgECMSPLUS
//---------------------------浏览历史记录函数xqgECMSPLUS
function user_SetCook($name,$id,$time=0,$num=10){//cookie名称 ID 时间戳 数量xqgECMSPLUS
global $empire,$dbtbpre;xqgECMSPLUS
$r=$empire->fetch1("select * from {$dbtbpre}ecms_news where id=$id");xqgECMSPLUS
if(!$id||!$r['id']){xqgECMSPLUS
printerror2('不存在的产品记录',$_SERVER['HTTP_REFERER']);xqgECMSPLUS
}xqgECMSPLUS
$prodq=$id.'|';xqgECMSPLUS
$projilu=getcvar($name);xqgECMSPLUS
if($projilu){xqgECMSPLUS
$prozuhe=$prodq.$projilu;//把新浏览的放在第一xqgECMSPLUS
$pro_arr=explode('|',$prozuhe);xqgECMSPLUS
$new_arr=array_merge(array_unique($pro_arr));//去除重复,重新索引下标xqgECMSPLUS
foreach($new_arr as $key=>$val){xqgECMSPLUS
if(($key<$num) && $val){xqgECMSPLUS
$pro.=$val.'|';xqgECMSPLUS
}xqgECMSPLUS
}xqgECMSPLUS
}else{xqgECMSPLUS
$pro=$prodq;xqgECMSPLUS
}xqgECMSPLUS
esetcookie($name,$pro,$time);xqgECMSPLUS
//esetcookie($name,'',0);xqgECMSPLUS
//print_r($_COOKIE);xqgECMSPLUS
}xqgECMSPLUS
//---------------------------浏览历史输出函数xqgECMSPLUS
function user_GetCook($name,$tbname,$num=10){ //名称 数据表 数量xqgECMSPLUS
global $empire,$dbtbpre;xqgECMSPLUS
if(preg_match("/^[0-9\|]+$/",getcvar($name))){xqgECMSPLUS
$jilu_all=substr(getcvar($name),0,-1); //1|2|3xqgECMSPLUS
$jilu_idin=str_replace('|',',',$jilu_all);//1,2,3xqgECMSPLUS
}else{xqgECMSPLUS
$jilu_idin=0;//避免sql错误没有返回0xqgECMSPLUS
}xqgECMSPLUS
$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 里面的排序xqgECMSPLUS
while($jilu_r=$empire->fetch($sql))xqgECMSPLUS
{xqgECMSPLUS
$titleurl=sys_ReturnBqTitleLink($jilu_r);xqgECMSPLUS
echo '<li><a target="_blank" href="'.$titleurl.'">'.$jilu_r[title].'</a></li>';//此处是修改样式需要图片自己加xqgECMSPLUS
}xqgECMSPLUS
}xqgECMSPLUS
?>xqgECMSPLUS
上面的代码放入e/class/userfun.php中

第二步:复制代码另存为xxx.php文件,以下是实现代码

xqgECMSPLUS
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">xqgECMSPLUS
<html xmlns="http://www.w3.org/1999/xhtml">xqgECMSPLUS
<head>xqgECMSPLUS
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />xqgECMSPLUS
<style>xqgECMSPLUS
html, body, div, ul, ol, li, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, p, blockquote, fieldset, input {margin: 0;padding: 0}xqgECMSPLUS
h1, h2, h3, h4, h5, h6, pre, code, address, caption, cite, code, em, strong, th {font-size: 1em;font-weight: normal;font-style: normal}xqgECMSPLUS
strong{ font-weight:bold}xqgECMSPLUS
address, caption, cite, code, dfn, em, i, th, var, b {xqgECMSPLUS
font-style: normal;xqgECMSPLUS
font-weight: normal;xqgECMSPLUS
}xqgECMSPLUS
ul,li, ol {list-style: none}xqgECMSPLUS
fieldset, img {border: none}xqgECMSPLUS
caption, th {text-align: left}xqgECMSPLUS
table { border-collapse: collapse; border-spacing: 0; }xqgECMSPLUS
/* LAYOUT */xqgECMSPLUS
.clear {clear: both}xqgECMSPLUS
a { color: #4a4a4a}xqgECMSPLUS
a:link, a:visited, a:active {text-decoration: none}xqgECMSPLUS
a:hover {text-decoration: underline;color:#2a609f}xqgECMSPLUS
div a:hover {xqgECMSPLUS
color: #FF5A5A;xqgECMSPLUS
}xqgECMSPLUS
body {xqgECMSPLUS
font: 12px/18px "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;xqgECMSPLUS
color: #4a4a4a;xqgECMSPLUS
}xqgECMSPLUS
div{xqgECMSPLUS
float: left;xqgECMSPLUS
width: 160px;xqgECMSPLUS
overflow: hidden;xqgECMSPLUS
}xqgECMSPLUS
div:after {xqgECMSPLUS
content: ".";xqgECMSPLUS
display: block;xqgECMSPLUS
clear: both;xqgECMSPLUS
visibility: hidden;xqgECMSPLUS
line-height: 0;xqgECMSPLUS
height: 0;xqgECMSPLUS
}xqgECMSPLUS
div strong {xqgECMSPLUS
display: block;xqgECMSPLUS
font-size: 14px;xqgECMSPLUS
color: #999999;xqgECMSPLUS
margin: 5px 0 15px 0;xqgECMSPLUS
font-weight: bold;xqgECMSPLUS
}xqgECMSPLUS
div a {xqgECMSPLUS
margin: 0 10px 10px 0;xqgECMSPLUS
float: left;xqgECMSPLUS
display: block;xqgECMSPLUS
color: #666666;xqgECMSPLUS
border: 1px solid #dbdbdb;xqgECMSPLUS
background: #fbfbfb;xqgECMSPLUS
font-size: 12px;xqgECMSPLUS
font-weight: normal;xqgECMSPLUS
padding: 1px 6px;xqgECMSPLUS
-webkit-box-shadow: 1px 1px 2px #dbdbdb;xqgECMSPLUS
-moz-box-shadow: 1px 1px 2px #dbdbdb;xqgECMSPLUS
box-shadow: 1px 1px 2px #dbdbdb;xqgECMSPLUS
-webkit-border-radius: 5px;xqgECMSPLUS
-moz-border-radius: 5px;xqgECMSPLUS
border-radius: 5px;xqgECMSPLUS
word-wrap: normal;xqgECMSPLUS
word-break: keep-all;xqgECMSPLUS
}xqgECMSPLUS
</style>xqgECMSPLUS
</head>xqgECMSPLUS
<body>xqgECMSPLUS
<div>xqgECMSPLUS
<strong>浏览历史</strong>xqgECMSPLUS
<?phpxqgECMSPLUS
require("../../class/connect.php");xqgECMSPLUS
require("../../class/db_sql.php");xqgECMSPLUS
require("../../class/userfun.php");xqgECMSPLUS
$link=db_connect();xqgECMSPLUS
$empire=new mysqlquery();xqgECMSPLUS
$id=(int)$_GET['id'];xqgECMSPLUS
user_SetCook('cookiepro',$id,0,10);//cookie名称可以自己定别重复 ID 时间戳 数量xqgECMSPLUS
user_GetCook('cookiepro','news',10);//字段是newsxqgECMSPLUS
db_close();xqgECMSPLUS
$empire=null;xqgECMSPLUS
?>xqgECMSPLUS
</div>xqgECMSPLUS
</body>xqgECMSPLUS
</html>xqgECMSPLUS
xqgECMSPLUS
保存为PHP文件比如xxx.php,放入e/public/ViewClick,文件夹中xqgECMSPLUS
xqgECMSPLUS
xqgECMSPLUS
第三步,把下面的代码放入内容页面。请注意,字段我是放新闻字段'news',所以内容页必须是新闻字段的内容页才行。修改字段可以放其他页面,比如商城,软件栏目等内容页面下。xqgECMSPLUS
xqgECMSPLUS
放入你要放的位置,js代码是iframe自适应代码。不放入这段代码有可能不能适应高度。

如下示例代码:

&lt;iFrame src=&quot;&lt;?=$public_r[newsurl]?&gt;/e/public/ViewClick/xxx.php?id=&lt;?=$navinfor[&#039;id&#039;] ?&gt;&quot; width=&quot;100%&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot;&gt;&lt;/iFrame&gt;
&lt;script type=&quot;text/javascript&quot; style=&quot;display:none&quot;&gt;
function reinitIframe(){
var iframe = document.getElementById(&quot;ifm&quot;);
try{
var bHeight = iframe.contentWindow.document.body.scrollHeight;
var dHeight = iframe.contentWindow.document.documentElement.scrollHeight;
var height = Math.max(bHeight, dHeight);
iframe.height = height;
}catch (ex){}
}
window.setInterval(&quot;reinitIframe()&quot;, 200);
&lt;/script&gt;
分享到 :
相关推荐

发表评论

登录... 后才能评论

评论(3)

加入本站VIP会员订阅计划,海量资源免费下载查看

目前为止共有3位优秀的VIP会员加入!

立即加入VIP会员