thinkphp 实现浏览历史功能

就像浏览器一样,能够记录访问了那些页面,这样能够减少时间,下面我们实现浏览历史的功能。
1.在你需要记录浏览数据的产品或新闻页面,记录cookie需要保存的信息,例如下面这行代码,把页面ID,产品名称,价格,缩略图,网址传给cookie_history。

 代码如下 复制代码

cookie_history($id,$info['title'],$info['price'],$info['pic'],$thisurl);

2.function.php 里面添加代码

 代码如下 复制代码

/**
  +----------------------------------------------------------
 * 浏览记录按照时间排序
  +----------------------------------------------------------
 */
function my_sort($a, $b){
$a = substr($a,1);
$b = substr($b,1);
if ($a == $b) return 0;
return ($a > $b) ? -1 : 1;
  }
/**
  +----------------------------------------------------------
 * 网页浏览记录生成
  +----------------------------------------------------------
 */
function cookie_history($id,$title,$price,$img,$url){
$dealinfo['title'] = $title;
$dealinfo['price'] = $price;
$dealinfo['img'] = $img;
$dealinfo['url'] = $url;
$time = 't'.NOW_TIME;
$cookie_history = array($time => json_encode($dealinfo));  //设置cookie
if (!cookie('history')){//cookie空,初始一个
cookie('history',$cookie_history);
}else{
$new_history = array_merge(cookie('history'),$cookie_history);//添加新浏览数据
uksort($new_history, "my_sort");//按照浏览时间排序
$history = array_unique($new_history);
if (count($history) > 4){
$history = array_slice($history,0,4);
}
cookie('history',$history);
}
}
/**
  +----------------------------------------------------------
 * 网页浏览记录读取
  +----------------------------------------------------------
 */
function cookie_history_read(){
$arr = cookie('history');
foreach ((array)$arr as $k => $v){
$list[$k] = json_decode($v,true);
}
return $list;
}

3.在需要显示浏览记录的页面输出信息

 代码如下 复制代码

$this->assign('history',cookie_history_read());

模板里面用volist显示出来就行了。

时间: 2024-11-03 00:44:12

thinkphp 实现浏览历史功能的相关文章

thinkphp浏览历史功能实现方法_php实例

本文实例讲述了thinkphp浏览历史功能实现方法,分享给大家供大家参考.具体实现方法分析如下: 历史浏览功能都是使用了cookie功能记录用户信息放到了本地了,这样我们只要读取存储在cookies中的值就可以了,下面来给大家介绍一个基于thinkphp 实现浏览历史功能例子. 就像浏览器一样,能够记录访问了哪些页面,这样能够减少时间,下面我们实现浏览历史的功能. 1.在你需要记录浏览数据的产品或新闻页面,记录cookie需要保存的信息,例如下面这行代码,把页面ID,产品名称,价格,缩略图,网址

jquery使用Cookie和JSON记录用户最近浏览历史_jquery

在一些电商网站,有"商品浏览历史记录"这一功能,一些视频类.小说类的网站也能记录用户最近的浏览历史.本文将使用Cookie以及JSON来讲解如何实现这一功能. Cookie可以用来记录客户端用户ID.密码.浏览过的网页.停留的时间等信息,jQuery提供了一个cookie插件,能非常方便的读写cookie信息.基本流程: 1.获取文章详情页面文章的标题和页面地址: 2.获取浏览历史cookie信息,判断如果浏览历史的cookie中已经存在当前文章的浏览记录,则不进行任何操作: 3.如果

Internet Explorer 编程简述(八)实现浏览历史菜单

编程|菜单 关键字:ITravelLogStg, IEnumTravelLogEntry, ITravelLogEntry 1.概述 Internet Explorer的浏览历史菜单在4.0版本开始出现,但直到5.5之前,微软都未公布用于访问浏览历史的COM接口,如今已是IE6.0大行其道的年代,用于访问浏览历史的接口也早已公布多时,本文的目的则是试图抛砖引玉,简单介绍用于访问浏览历史的Travel Log接口,并用一个小小的类CIETravelLog来实现对Travel Log的封装. 2.I

IE10新增禁用选项卡浏览的功能

在IE6时代,浏览器是没有选项卡分页浏览这项功能的.从IE7开始,IE浏览器便推出了选项卡功能,可以让我们在一个IE窗口内同时打开多个网页,这个功能一直延续到目前的IE10. 在IE7.IE8的时候,这项功能一直跟别的浏览器一样.到了IE9,微软对选项卡这项功能进行了改进,引入了标签组的功能.不过在IE7至IE9时代,浏览器必须开启这项功能.到了IE10,微软给用户更多选择,可以随意开启或禁用选项卡的功能.如果你一直都怀念IE6那种窗口浏览模式,可以在IE10中禁用选项卡浏览功能. 操作方法:

浏览历史记录器BrowsingHistoryView

如果你想查询某台电脑的使用者最近看过了哪些网页,不妨使用「BrowsingHistoryView」这套轻巧好用的小工具.它能依照你所指定的日期或 是最近几小时/几天,直接抓取浏览器的浏览历史记录,支持了IE.Firefox.Chrome及Safari等四大浏览器,还能将结果保存成多种格式.当你想快速查出最近用过哪个浏览器看过了什么网页,或是家中小朋友上过哪些网站,可以试试看这套好用的工具喔!(这个工具跟我们之类介绍的IEHistoryView工具有点类似,只是IEHistoryView仅仅是针对

傲游浏览器如何清除浏览历史

  首先打开傲游云浏览器右上角的三道杠图标 选择中间的清除浏览历史 在弹出的窗口按需要选择需要清理的内容,点击立即清除,就OK了

ASP.NET开发中怎么实现多图片上传并浏览的功能

问题描述 ASP.NET开发中怎么实现多图片上传并浏览的功能 ASP.NET开发中怎么实现多图片上传并浏览的功能,可以用什么控件来做? 解决方案 用jquery或者flash,自带的控件好像是不可以 解决方案二: 可以试试Aurigma Upload Suite,功能挺强大的一款图文上传控件,有多个版本,可以根据自己的需求进行选择.

阿里云服务器创建历史功能介绍 快速创建云服务器

当我们登录阿里云控制台创建云服务器的时候,通常的做法是先登录阿里云服务器购买界面,再配置计费方式.网络类型.实例规格.带宽.镜像等一系列云服务器参数,最后创建云服务器.如果我们在配置参数的过程中出现误配的情况,可能需要重新配置参数或者重新创建云服务器.那么有什么方法可以简化这个过程吗?云服务器创建历史功能解决了上述问题. 云服务器创建历史功能 功能简介 在云服务器创建历史功能发布以前,通过阿里云控制台创建云服务器的方法通常是进入阿里云服务器购买界面,配置云服务器的计费方式.网络.安全组.镜像等信

PHP实现将浏览历史页面网址保存到cookie的方法_php技巧

本文实例讲述了PHP实现将浏览历史页面网址保存到cookie的方法.分享给大家供大家参考.具体如下: 将浏览历史页面网址保存到cookie,大致的思路如下面的代码,与实际应用有些差别. 复制代码 代码如下: <?php /*******  说明:cookie只能保存字符串 本实例中,需要保存多个URL(历史访问记录),思路是先将URL数组转为字符串,然后保存,读取时,再循环读取 *******/ //先假设当前URL为:http://localhost/php/?id=1 $id = $_GET