帝國CMS會員空間是沒有訪客記錄功能的,所以我們需要二次開發一個,方法不是非常復雜,步驟代碼會全部列出,大致效果是這樣的。
1、首先我們去后臺新建一個會員字段,用來儲存訪客記錄。字段名
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模板,增加訪問空間頁面就寫入訪客記錄代碼//增加會員訪問記錄
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、最后就是在需要的地方調用訪問記錄就可以了<?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會員內容,完工了。
新聞熱點
疑難解答