帝國CMS會員空間是沒有訪客記錄功能的,所以我們需要二次開發一個,方法不是非常復雜,步驟代碼會全部列出,大致效果是這樣的。

1、首先我們去后臺新建一個會員字段,用來儲存訪客記錄。
| 1 2 3 4 5 6 7 8 9 10 11 | 字段名 zuijin字段標識 最近訪客字段類型 字符型0-255字節(VARCHAR) 255輸入表單替換html代碼<input name="zuijin" type="text" id="zuijin" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($addr[zuijin]))?>" size=""> |
2、然后修改會員空間的header.temp.php模板,增加訪問空間頁面就寫入訪客記錄代碼
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | //增加會員訪問記錄if ($getuserid && $getuserid<>$userid){ $r=$empire->fetch1("select zuijin from {$dbtbpre}enewsmemberadd where userid='$userid' limit 1"); if (empty($r['zuijin'])){ $empire->query("update {$dbtbpre}enewsmemberadd set zuijin='$getuserid::::::' where userid='$userid'"); } else { $zuijin=explode("::::::",$r['zuijin']); if (in_array($getuserid,$zuijin)) { $newzuijin=$getuserid."::::::".str_replace($getuserid."::::::","",$r['zuijin']); $empire->query("update {$dbtbpre}enewsmemberadd set zuijin='$newzuijin' where userid='$userid'"); } else{ $empire->query("update {$dbtbpre}enewsmemberadd set zuijin='$getuserid::::::$r[zuijin]' where userid='$userid'"); } }} |
當用戶訪問就寫入字段zuijin記錄下來。數據庫大致格式為:ID::::::
3、最后就是在需要的地方調用訪問記錄就可以了
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <?php$jl=$empire->fetch1("select zuijin from {$dbtbpre}enewsmemberadd where userid='$userid' limit 1");$jluserid=explode("::::::",$jl['zuijin']);$i=0;$jlnum=count($jluserid)-1;if ($jlnum>=8){ $jlnum=8;} elseif ($jlnum=='0') { echo '<div class="nogz">暫時還沒有訪客記錄</div>';} while($i<$jlnum){ $jluser=$empire->fetch1("select * from {$dbtbpre}enewsmemberadd where userid='$jluserid[$i]' limit 1"); $jluserxx=$empire->fetch1("select * from {$dbtbpre}enewsmember where userid='$jluserid[$i]' limit 1"); $jluserpic=$jluser['userpic']?$jluser['userpic']:$public_r[newsurl].'e/data/images/nouserpic.gif'; ?> <li><a href="/e/space/?userid=<?=$jluserid[$i]?>"><img src="<?=$jluserpic?>" /><span><?=$jluserxx[username]?></span></a></li> <? $i++; }?> |
首先循環查詢出zuijin字段的內容,然后分隔出來,最后再循環調用對應的ID會員內容,完工了。
新聞熱點
疑難解答