方法步驟:
一:在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_idin=str_replace('|',',',$jilu_all);//1,2,3
- }else{
- $jilu_idin=0;//避免sql錯誤沒有返回0
- }
- $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))
- { //開源軟件:Vevb.com
- $titleurl=sys_ReturnBqTitleLink($jilu_r);
- echo '<li><a href="'.$titleurl.'">'.$jilu_r[title].'</a></li>';//此處是修改樣式需要圖片自己加
- }
- }
二:在內容模版最上面加入以下代碼:
- <?php
- user_SetCook('cookiepro',$navinfor[id],0,10);//cookie名稱可以自己定別重復 ID 時間戳 數量
- ?>
三:在需要顯示的地方加入以下代碼:
<?=user_GetCook('cookiepro','shop',10);?>//名稱 數據表名 數量
新聞熱點
疑難解答