/**
* 商品历史浏览记录
* $data 商品记录信息
*/
private function _history($data)
{
if(!$data || !is_array($data))
{
return false;
} //判断cookie类里面是否有浏览记录
if($this->_request->getCookie('history'))
{
$history = unserialize($this->_request->getCookie('history'));
array_unshift($history, $data); //在浏览记录顶部加入 /* 去除重复记录 */
$rows = array();
foreach ($history as $v)
{
if(in_array($v, $rows))
{
continue;
}
$rows[] = $v;
} /* 如果记录数量多余5则去除 */
while (count($rows) > 5)
{
array_pop($rows); //弹出
} setcookie('history',serialize($rows),time() + 3600 * 24 * 30,'/');
}
else
{
$history = serialize(array($data)); setcookie('history',$history,time() + 3600 * 24 * 30,'/');
}
}

php浏览历史记录的更多相关文章

  1. php浏览历史记录的方法

    本文实例讲述了php浏览历史记录的方法.分享给大家供大家参考.具体实现方法如下: /** * 商品历史浏览记录 * $data 商品记录信息 */private function _history($ ...

  2. Html5使用history对象history.pushState()和history.replaceState()方法添加和修改浏览历史记录

    根据网上参考自己做个笔记:参考网址:http://javascript.ruanyifeng.com/bom/history.html history.pushState() HTML5为histor ...

  3. PHP实现浏览历史记录

    http://www.3a88.com/service/206.html http://www.1360.cc/ZhanChangJiaoCheng/6831.html http://www.osch ...

  4. java_Cookies_1_商品浏览历史记录servlet2

    public class CookiesServlet2 extends HttpServlet { // 显示商品详细信息 public void doGet(HttpServletRequest ...

  5. java_Cookies_1_商品浏览历史记录servlet1

    public class CookiesServlet1 extends HttpServlet { public void doGet(HttpServletRequest request, Htt ...

  6. js操作Cookie,实现历史浏览记录

    /** * history_teacher.jsp中的js,最近浏览名师 * @version: 1.0 * @author: mingming */ $(function(){ getHistory ...

  7. Servlet—Cookie(显示用户上次访问时间、显示商品浏览历史)

    1 . 什么是会话? 会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. 1.1 会话过程中要解决的一些问题? 每个用户在使用浏览器 ...

  8. 教你如何清除 MyEclipse/Eclipse 中 Web Browser 和 Switch Workspace 的历史记录

    有些许强迫症的开发人员可能会因为 MyEclipse/Eclipse 中 Web Browser 和 Switch Workspace 冗余的历史记录而感到苦恼,下面的方法就可以有效的帮助解决你的痛点 ...

  9. 如何让ie8地址栏下拉框里不显示历史记录和收藏夹

    打开浏览器,点击IE浏览器上方工具——Internet选项——内容——自动完成的设置——地址栏里面的勾勾去掉,浏览历史记录和收藏夹里面的东西就自动没有了

随机推荐

  1. HTML第二节课

    表单 <form id="" name="" method="post/get" action=""> &l ...

  2. 启动tomcat,报java.lang.NoClassDefFoundError

    用的Build Path加进来的jar包,没有读取到,应该讲jar包放在lib目录下

  3. IE hack中主要的几个

    _: IE6; #*+.: IE6 IE7; black\0: IE8; black\9: IE所有; @media screen\9 { … }: IE6 IE7; @media \0screen\ ...

  4. winform把图片存储到数据库

    1.先在Form中放一个PictureBox控件,再放三个按钮. 2.双击打开按钮,在里面写如下代码: OpenFileDialog open1 = new OpenFileDialog(); Dia ...

  5. 对ASM存储管理的一些初步理解记录

    ASM:Automatic Storage Management,是ORACEL10G以后为了简化存储管理的复杂性,也是为了摆脱对其他厂商的依赖而推出的.ASM作为目前ORACLE推荐的首选存储方案, ...

  6. github标记

    <template> <a href="https://github.com/lmk123/Runner" class="github-corner&q ...

  7. Web前端开发基础 第四课(CSS一些性质)

    继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代.比如下面代码:如某种颜色应用于p标签,这个颜色设置不仅应用p标签 ...

  8. BizTalk开发系列(十) ESB Guidance安装笔记

    ESB指导工具包(ESB Guidance)是一个运行于BizTalk Server 2006 R2之上的一个框架.详细信息访问ESB指导工具包社区网站 .源码下载 ESB Guidance的安装过程 ...

  9. ActiveMQ: 搭建Broker集群(cluster)

    上一篇介绍了基于Networks of Borkers的2节点HA方案,这一篇继续来折腾Networks of Brokers,当应用规模日渐增长时,2节点的broker可能仍然抗不住访问压力,这时候 ...

  10. DataTable使用技巧总结【转】

    一.DataTable简介 ()构造函数 DataTable() 不带参数初始化DataTable 类的新实例. DataTable(string tableName) 用指定的表名初始化DataTa ...