下载鸥 > 网站下载 > 开发教程 > 帝国CMS

帝国cms怎样记录会员浏览信息历史记录?

429 2021-03-28 23:47:12

收藏
帝国cms论坛早已有了以cookie形式保存浏览量历史记录在客户端的插件,但这样不是很安全,而我们通过数据库记录的数据,对于客户的隐私保护明显要好的多,以下就是帝国cms数据库保存模式记录会员的浏览记录信息的实现过程。

1、首先新建一张表
帝国后台--系统--备份数据--执行sql:
注意:这里是gb2312的编码,大多数用户的帝国cms是utf-8版本,请根据自己的实际情况决定编码格式。
CREATE TABLE `3`.`phome_ly_recorduser` (
`id` INT( 10 ) NOT NULL AUTO_INCREMENT ,
`userid` INT( 10 ) NOT NULL ,
`text` TEXT CHARACTER SET gb2312 COLLATE gb2312_chinese_ci NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM ;

2、在需要记录信息的内容模板中插入以下代码:(注意-需要先引入jquery.js 下面代码要在jquery插件后面在插入)
<script>
//栏目ID
var classid = [!--classid--];
//信息ID
var id = [!--id--];
//表名称<script>
//栏目ID
var classid = [!--classid--];
//信息ID
var id = [!--id--];
//表名称
var tbname = '<?=$class_r[$navinfor['classid']]['tbname']?>';
//登陆用户
var userid = <?=$lguserid=intval(getcvar('mluserid'))?>;
$(function(){
    if(userid)
    {
    $.post(
        '/ly/recorduser/index.php',
        {
            userid:userid,
            classid:classid,
            id:id,
            tbname:tbname
        },"html");
    }
})
</script>

3、处理函数:

可以自己复制代码,也可以直接下载压缩包
文件路径 根目录/ly/recorduser/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
if($user=$empire->fetch1("select * from {$dbtbpre}ly_recorduser where userid = {$_POST['userid']}"))
{
        //格式化字符串
        $text="{$_POST['tbname']}@@@{$_POST['classid']}@@@{$_POST['id']}";        
        //信息分隔符
        $dot='';
        //判断是否已有记录数
        if(strstr($user['text'],$text))
        {
            //已有记录
            die;        
        }
        if($user['text']!='')
        {
            $dot='::::::';
        }
        
        //大于10调记录数去掉最后的一条信息
        if($user['text'] && substr_count($user['text'],$dot)>=9)
        {
            //去除最后一条记录数
            $arr=explode('::::::',$user['text']);
            $arrtext='';
            $dot1=$dot;
            for($i=0;$i<count($arr);$i++)
            {
                if($i!=(count($arr)-1))
                {
                    if($i==(count($arr)-2))
                    {
                        $dot1='';        
                    }
                    $arrtext.=$arr[$i].$dot1;
                }
            }
            $text.=$dot.$arrtext;
        }
        else
        {
            $text.=$dot.$user['text'];
        }
        //不存在的记录数、更新表
        $empire->query("update {$dbtbpre}ly_recorduser set `text` = '{$text}' where userid = {$_POST['userid']}");
}
//没有记录数插入一条
else
{
    $text="{$_POST['tbname']}@@@@{$_POST['classid']}@@@{$_POST['id']}";        
    $sql=$empire->query(" INSERT INTO `{$dbtbpre}ly_recorduser` (`id`,`userid`,`text`) VALUES ( '' , {$_POST['userid']} , '{$text}' ) ");
}
?>

4、在需要查看的位置插入以下代码:
<ul>
<?php
$record=$empire->fetch1("select * from {$dbtbpre}ly_recorduser where userid = $user[userid]");
if($record)
{
    $info=explode("::::::",$record['text']);
    $text='';
    foreach($info as $v)
    {
        $arr=explode("@@@",$v);
        $sql=$empire->fetch1("select * from {$dbtbpre}ecms_{$arr[0]} where classid = {$arr[1]} and id = {$arr[2]}");
        $titleurl=sys_ReturnBqTitleLink($sql);
        $text.="<li><a href='{$titleurl}' target='_blank'>{$sql[title]}</a></li>";
    //print_r($arr);
    //die;        
    }
}
?>
<?=$text?>
</ul>
 

本文地址:https://xzo.com.cn/develop/empire/762.html

有帮助,很赞!

信息来源:下载鸥
导出教程 下载word版教程
发表评论 共有条评论
关于帝国CMS


帝国cms是一款功能极为强大的cms程序,性能强悍、安全性高,可轻松支持10万数据,高级开发人员可制作出能容纳千万数据量的网站,是国内最出色的开源cms程序之一,推荐企业用户使用

当前最新版本为7.5,8.0版本即将上线,新版本的核心优化点在于多终端的适配。

推荐帝国CMS开发教程
帝国CMS百度推送插件怎样将默认ID排序改为时间倒序?
帝国CMS百度推送插件怎样将默认ID排序改为时间倒序?

很多采集站点可能是这样操作的:采集好的资讯时间是采集时间,到了发布的时候会...

19 594
帝国cms怎样去掉选择注册会员类型?
帝国cms怎样去掉选择注册会员类型?

帝国cms会员用户组功能十分强大,用户可以根据情况选择个人会员或企业会员等,...

1 388
帝国CMS添加/修改信息后,怎样自动刷新栏目和首页?
帝国CMS添加/修改信息后,怎样自动刷新栏目和首页?

很多网友在新增信息之后发现首页看不到栏目也看不到,于是开始点刷新刷新内容...

3 757
帝国CMS有必要开发百度小程序吗?
帝国CMS有必要开发百度小程序吗?

百度小程序的开放生态对网站站长及企业商家而言,能够从中获取到什么呢?百度智...

1 406
帝国cms制作信息反馈表的方法
帝国cms制作信息反馈表的方法

帝国cms自带的信息反馈功能,不仅可以实现留言功能,还可以实现像在线报名、反...

1 498
帝国cms怎样做下载日、周、月排行功能?
帝国cms怎样做下载日、周、月排行功能?

帝国cms开发的下载站很多,许多站点基于优质用户推荐的需求就需要做下载的日...

3 393
帝国cms投稿后怎样跳转指定页面?
帝国cms投稿后怎样跳转指定页面?

帝国cms投稿后怎样跳转的问题一直让很多人困扰。有人想跳到个人中心,也有人...

1 376
帝国cms网站怎样判断是动态、静态还是伪静态?
帝国cms网站怎样判断是动态、静态还是伪静态?

对于资深一点的站长或者SEO来说,一定会经常听到动态、静态、伪静态这类的词...

0 493
推荐插件
帝国cms批量添加后台用户插件
帝国cms批量添加后台用户插件

使用帝国cms的企业用户、新闻资讯类站点的用户很多,此类站点很多时候需要有...

0 598
帝国cms百度AI图像清晰度增强api接口对接插件
帝国cms百度AI图像清晰度增强api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像清晰度增强的功能。经...

0 422
帝国cms自动给正文关键词添加tag内链
帝国cms自动给正文关键词添加tag内链

帝国cms有自带的给关键词添加内链功能,但需要手动添加关键词,容易出现疏漏和...

0 679
帝国cms百度AI图像去雾api接口对接插件
帝国cms百度AI图像去雾api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像去雾的功能。经过实际...

0 374
帝国cms访问统计ip地址链接与封禁插件下载
帝国cms访问统计ip地址链接与封禁插件下载

下载鸥开发了这款帝国cms封禁ip插件,自动记录访问情况,让我们可以更快的识别...

0 897
帝国cms智能自动审核按星期几审核指定栏目带推送插件
帝国cms智能自动审核按星期几审核指定栏目带推送插件

采集站的必备资源是自动审核,要做到日收录也离不开定时发布。而本插件的自动...

0 1154
帝国cms多栏目多数据表自动审核推送插件
帝国cms多栏目多数据表自动审核推送插件

本插件基于帝国cms帝国cms每日自动审核插件,在自动审核指定条数信息的基础上...

0 804
帝国cms联想词搜索高级搜索插件下载
帝国cms联想词搜索高级搜索插件下载

帝国CMS自带的搜索功能虽然强大,但也有很强的局限性 -- 必须关键词完全匹配...

0 633
客服QQ:341553759
扫码咨询 常见问题 >
官方交流群:90432500
点击加入