我要把最近浏览过的本站的url 放到session里 然后在页面上显示 
效果参照:
http://alexa.chinaz.com/
左边的要求就是满10个的时候 就把旧的地址换成新的。
谢谢各位啊

解决方案 »

  1.   

    if (count($_SESSION['url']) > 9) {
        array_shift($_SESSION['url']);  //删除第一个数组元素,所有其它单元向前移动一位
        array_push($_SESSION['url'],'新的url'); //入栈操作
    }
      

  2.   

    if (count($_SESSION['url']) > 9) {
        array_shift($_SESSION['url']);  //删除第一个数组元素,所有其它单元向前移动一位
        $_SESSION['url'][] = '新的url'; //新增url入栈
    }
    else $_SESSION['url'][] = '新的url';
      

  3.   

    echo "<p>最近访问记录:</p>\n";
    foreach($_SESSION['url'] as $url) echo "<p>{$url}</p>\n";
      

  4.   


    报错了
    Warning: Invalid argument supplied for foreach() 
      

  5.   


    echo "<p>最近访问记录:</p>\n";
    if (isset($_SESSION['url']) && count($_SESSION['url']) > 0) {
        foreach($_SESSION['url'] as $url) echo "<p>{$url}</p>\n";
    }
      

  6.   

    echo "<p>最近访问记录:</p>\n";
    if (isset($_SESSION['url']) && count($_SESSION['url']) > 0) {
        foreach($_SESSION['url'] as $url) echo "<p>{$url}</p>\n";
    }echo count($_SESSION['url']);    $lurl = "http://www.xxx.com/id_".$ids.".html";
    if (count($_SESSION['url']) > 9) {
        array_shift($_SESSION['url']);  //删除第一个数组元素,所有其它单元向前移动一位
        $_SESSION['url'][] = lurl; //新增url入栈
    }
    else $_SESSION['url'][] = lurl;这个count($_SESSION['url']) 一直都是0哦  好像没能加进去
      

  7.   

    if (count($_SESSION['url']) > 9) {
        array_shift($_SESSION['url']);  //删除第一个数组元素,所有其它单元向前移动一位
        $_SESSION['url'][] = $lurl; //新增url入栈
    }
    else $_SESSION['url'][] = $lurl;
      

  8.   

    这个。。有点诡异了啊。。加入调试代码,看看有木有错误信息:error_reporting(E_ALL);echo "<p>最近访问记录:</p>\n";
    if (isset($_SESSION['url']) && count($_SESSION['url']) > 0) {
        foreach($_SESSION['url'] as $url) echo "<p>{$url}</p>\n";
    }echo count($_SESSION['url']);    $lurl = "http://www.xxx.com/id_".$ids.".html";
    if (count($_SESSION['url']) > 9) {
        array_shift($_SESSION['url']);  //删除第一个数组元素,所有其它单元向前移动一位
        $_SESSION['url'][] = $lurl; //新增url入栈
    }
    else $_SESSION['url'][] = $lurl;var_dump($_SESSION['url']);
      

  9.   


    Notice: Undefined variable: _SESSION in F:\Program Files\xampp\htdocs\gbsou\index.php on line 66
    0
    Notice: Undefined variable: _SESSION in F:\Program Files\xampp\htdocs\gbsou\index.php on line 69
    array(1) { [0]=> string(47) "http://www.xxx.com/id_XMjU5NTU5Mjc2.html" }
      

  10.   

    line 66  echo count($_SESSION['url']);    
    line 69   if (count($_SESSION['url']) > 9) {
      

  11.   

    Notice: Undefined index: url in F:\Program Files\xampp\htdocs\gbsou\index.php on line 68
    0
    Notice: Undefined index: url in F:\Program Files\xampp\htdocs\youku\index.php on line 71
    array(1) { [0]=> string(47) "http://www.gbsou.com/v_show/id_XMjU5NTU5Mjc2.html" } 1
      

  12.   

    echo count($_SESSION['url']); //这一行可以删掉了。。
    /*if (count($_SESSION['url']) > 9) {?
    改为:
    if (isset($_SESSION['url']) && count($_SESSION['url']) > 9) {
    */
      

  13.   


    可以了 但是又出现了问题 那就是session数组里都是现实相同的url 还是正在访问的。
      

  14.   

    没有记录历史的访问url 都是现在的 相同的
      

  15.   

    $_SESSION['url']数组中保存的是:
    $lurl = "http://www.xxx.com/id_".$ids.".html";
    如果你在执行这个脚本时$ids的值不变,记录的当然总是同一个url。估计是你没处理好这个变量吧。
      

  16.   

    为什么要用SESSION,用户浏览的信息,应该放到COOKIE中会更好一些。