首先会员上次登录时间,在论坛初始化核心类时初始化了这个变量为:
$_G['member']['lastvisit']
具体的初始化代码查看核心类文件./source/class/class_core.php中的:
- if(empty($this->var['cookie']['lastvisit'])) {
- $this->var['member']['lastvisit'] = TIMESTAMP - 3600;
- dsetcookie('lastvisit', TIMESTAMP - 3600, 86400 * 30);
- } else {
- $this->var['member']['lastvisit'] = $this->var['cookie']['lastvisit'];
- }
复制代码这里只是个时间戳,我们需要把他转化成我们需要的格式,通过函数dgmdate,所以我们在模版中可以这样调用用户的上次登录时间: - <!--{eval echo dgmdate($_G['member']['lastvisit'], 'd')}-->
复制代码另外,用户上次登录的地址,我们需要通过获取ip地址,通过discuz内置的转换ip函数转换成真实地址! 论坛首页默认是没有调用这ip数据的,所以我们需要在程序开始文件引入一些必要的函数和做一些必要的程序处理, 在./source/module/forum/forum_index.php文件中头部require_once libfile('function/forumlist');这段代码下面添加 - require_once libfile('function/misc');
复制代码 此文件主要包含了论坛ip转换的函数库文件。然后在紧接着添加如下获取用户最后登录ip的代码:
- if($_G['uid']){
- $lastip = DB::result_first("SELECT lastip FROM ".DB::table('common_member_status')." WHERE uid='".$_G['uid']."'");
- }
复制代码然后在模版中通过<!--{eval echo convertip($lastip)}-->调用即可!
|