zoukankan      html  css  js  c++  java
  • cookie记录用户的浏览商品的路径

    在电子商务的网站中,经常要记录用户的浏览路径,以判断用户到底对哪些商品感兴趣,或者哪些商品之间存在关联。

    下面将使用cookie记录用户的浏览过的历史页面。该网站将每个页面的标题保存在该页面的$TITLE 变量中,用户每访问一次,就将新访问的标题添加到COOKie变量$_COOKIE["history"]值中。

    随着访问页面的次数增多,该cookie变量中保存的含有页面标题的字符串会越来越长。将cookie变量切分成数组。然后输出数组元素的值就可以输出用户最近访问的页面的标题了

    <?php
    /*
     * 
     * @Authors peng--jun 
     * @Email   1098325951@qq.com
     * @Date    2015-11-07 11:16:05
     * @Link    http://www.cnblogs.com/xs-yqz/
     * @version $Id$
     ==========================================
     */
     header("Content-type: text/html; charset=UTF-8"); 
     ob_start();//打开缓冲区,以便在有输出后还能设置Cookie
     $TITLE = "西游记";//商品页有很多,其他商品页的title是水浒传、西游记等
    ?>
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title><?= $TITLE?></title>
    </head>
    <body>
        <h3><?= $TITLE ?>商品界面</h3>
        <p>同类商品:
            <a href="hlm.php">红楼梦</a>
            <a href="shz.php">水浒传</a>
            <a href="sg.php">三国演义</a>
        </p>
        <?php require("4.22.php"); ?>
    </body>
    </html>
    sg.php页面代码
    <?php
    /*
     * 
     * @Authors peng--jun 
     * @Email   1098325951@qq.com
     * @Date    2015-11-07 11:23:26
     * @Link    http://www.cnblogs.com/xs-yqz/
     * @version $Id$
     ==========================================
     */
     header("Content-type: text/html; charset=UTF-8"); 
      ob_start();//打开缓冲区,以便在有输出后还能设置Cookie
     $TITLE = "三国演义";//商品页有很多,其他商品页的title是水浒传、西游记等
    ?>
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title><?= $TITLE ?></title>
    </head>
    <body>
        <h3><?= $TITLE ?>商品界面</h3>
        <p>同类商品:
            <a href="hlm.php">红楼梦</a>
            <a href="shz.php">水浒传</a>
            <a href="sg.php">三国演义</a>
        </p>
        <?php include("4.22.php") ?>
    </body>
    </html>

    其余的 shz.php 和 hlm.php 的页面内容一致,只是$TITLE的变量值变了,其余没变。

    4.22.php

    <?php
    /*
     * 
     * @Authors peng--jun 
     * @Email   1098325951@qq.com
     * @Date    2015-11-07 11:25:06
     * @Link    http://www.cnblogs.com/xs-yqz/
     * @version $Id$
     ==========================================
     */
     header("Content-type: text/html; charset=UTF-8"); 
     $history = $_COOKIE["history"];//获取记录浏览历史的Cookies
     if ($history == "") {
         $path = $TITLE;//将当前页的标题保存到path变量中
     }else{
         $path = $TITLE."/".$history;//将当前页的标题加到浏览历史的最前面,用"/"符号分割
     }
     //将$path保存到Cookie变量中,设置过期时间为1天
     setcookie("history",$path,time()+3600*1);
     $arrPath = explode("/", $path);//将$path 分割成一个数组explode()函数
     foreach ($arrPath as $key => $value) {
         if ($key>9) break;//只输出最近的10条数据  foreach用于遍历数组
         echo ($key+1).".".$value."<br/>";//输出浏览历史
     }
    ?>
  • 相关阅读:
    经典回溯问题--八皇后dfs递归回溯求解【DFS】
    CSP认证考试(第九次)第一题
    C++字符串和数字格式转化(使用sprintf()和sscanf()函数)
    2016蓝桥杯C++A组第六题 寒假作业【暴力搜索】
    先序非递归建立二叉树
    sqlsrv数据库复杂语句1
    tp5域名配置
    JavaScript使用 value 属性
    数据库随机查询6条数据
    文件目录问题
  • 原文地址:https://www.cnblogs.com/xs-yqz/p/4944849.html
Copyright © 2011-2022 走看看