手机
当前位置:查字典教程网 >CMS教程 >帝国cms >帝国CMS7.0实现记录所有浏览访问的会员的方法
帝国CMS7.0实现记录所有浏览访问的会员的方法
摘要:本文以新闻系统数据表为例,讲述帝国CMS7.0实现记录所有浏览访问的会员入数据库的方法。具体步骤如下:一、新闻系统数据表中字段管理中添加&l...

本文以新闻系统数据表为例,讲述帝国CMS7.0实现记录所有浏览访问的会员入数据库的方法。具体步骤如下:

一、新闻系统数据表中字段管理中添加“visituserid”字段,字段类型为“CHAR ”。

二、在需要统计的页面的<head></head>中添加如下代码:

<script src="[]/ly/jquery.js" type="text/javascript"></script>

<script>

//信息ID

var id = [];

//登陆用户

var userid = <?=$lguserid=intval(getcvar('mluserid'))?>;

$(function(){

if(userid)

{

$.post(

'/ly/recorduser/index.php',

{userid:userid,id:id},

"html"

);

}

})

</script>

三、添加数据代码

可以下载压缩包,将其中的文件夹ly解压后放在根目录中,可以本站下载

文件路径 根目录/ly/recorduser/index.php

index.php文件代码:

<?php

require('../../e/class/connect.php'); //引入数据库配置文件和公共函数文件

require('../../e/class/db_sql.php'); //引入数据库操作文件

include('../../e/class/functions.php');

$link=db_connect(); //连接MYSQL

$empire=new mysqlquery(); //声明数据库操作类

if(!$_POST['userid'])

{

exit;

}

/*

userid

visituserid

/

表名称:

栏目ID

信息ID

表名称@@@栏目ID@@@信息ID::::::

/

*/

//查询是否已有userid

if($user=$empire->fetch1("select * from {$dbtbpre}ecms_news where id = {$_POST['id']}"))

{

//格式化字符串

$visituserid="{$_POST['userid']}";

//信息分隔符

$dot='';

//判断是否已有记录数

if(strstr($user['visituserid'],$visituserid))

{

//已有记录返回空

die;

}

if($user['visituserid']!='')

{

$dot=',';

}

//大于1000调记录数去掉最后的一条信息

if($user['visituserid'] && substr_count($user['visituserid'],$dot)>=999)

{

//去除最后一条记录数

$arr=explode(',',$user['visituserid']);

$arrvisituserid='';

$dot1=$dot;

for($i=0;$i<count($arr);$i++)

{

if($i!=(count($arr)-1))

{

if($i==(count($arr)-2))

{

$dot1='';

}

$arrvisituserid.=$arr[$i].$dot1;

}

}

$visituserid.=$dot.$arrvisituserid;

}

else

{

$visituserid.=$dot.$user['visituserid'];

}

//不存在的记录数、更新表

$empire->query("update {$dbtbpre}ecms_news set `visituserid` = '{$visituserid}' where id = {$_POST['id']}");

}

//没有记录数插入一条

else

{

$visituserid="{$_POST['userid']}";

$sql=$empire->query(" INSERT INTO `{$dbtbpre}ecms_news` `visituserid` VALUES '{$visituserid}' ");

}

?>

四、调用已阅人员列表

在需要调用的地方添加代码如下:

<div><li><b>已阅人:</b></li>

<>

<?php

if($navinfor[visituserid])

{

?>

<>

<?php

$record=$empire->fetch1("select * from {$dbtbpre}ecms_news where id = $navinfor[id]");

if($record)

{

$info=explode(",",$record['visituserid']);

$visituserid='';

foreach($info as $v)

{

$arr=explode($v);

$sql=$empire->fetch1("select * from {$dbtbpre}enewsmember where userid = $v ");

$visituserid.="<li><a href='/e/space/?userid=$v' title='点击访问{$sql[username]}的空间' target='_blank'>{$sql[username]}</a></li>";

//print_r($arr);

//die;

}

}

?>

<?=$visituserid?>

<>

<?php

}

else

{

?>

<>

<>

<?php

}

?>

</div>

这样就可以了。

【帝国CMS7.0实现记录所有浏览访问的会员的方法】相关文章:

帝国CMS简单实现国-省-市联动菜单的方法

帝国CMS标签tags出现空标签的情况解决方法

帝国CMS灵动标签e:loop的使用方法分享

帝国CMS6.6 整合Ucenter接口的图文教程

帝国CMS自动截取简介出现乱码的解决方法

让帝国CMS留言板支持调用标签的方法

帝国CMS在自定义列表中获取当前列表ID的方法

帝国CMS结合项筛选带已选择的条件和删除操作的方法

帝国CMS二次开发基本问题汇总

帝国cms升级到7.0刷新自定义列表出错的解决方法

精品推荐
分类导航