可以设置:
session.cookie_lifetime = 0
为永远存活.
改为:
session.cookie_lifetime = 100
//这样浏览器关闭以后,session还可以存活100秒。当然还要依赖下面的选项session.gc_maxlifetime = 1440
这个是设置session多长时间没有使用以后,php就会删除它。单位都是秒

解决方案 »

  1.   

    session.cookie_path
    路径
    在phpinfo();
    都可以找到的.
      

  2.   

    先谢了!
    但是你还没有明我的意思.
    我是想在程序当中用函来实现这些:
    不知可不可以,或者是否有这样的函数.
    我看到这个函数:
    session_set_cookie_params(int lifetime [, string path [, string domain [, bool secure]]])
    可以设置session的存活时间,
    但具体怎么用,我还是不蛮清楚,
    那位能给个实例看一下;
    还有那个session的存放路径.
      

  3.   

    你那是在php.ini文件里面设置,
    我是想知道怎么在程序里面用具体的函数来设,
    而不是在php.ini文件里面来设,
    难道session.cookie_lifetime 这些东东可以直接放在程序里面来设吗?
      

  4.   

    session_set_cookie_params(int lifetime [, string path [, string domain [, bool secure]]]);
    我看了一些资料用这个是对的.你要是的存活时间和路径.
    那么就是
    session_set_cookie_params(int lifetime [, string path ]);
    这些的设置是临时的,到脚本执行结束为止.不会改变php.ini的设置.
    时间上好象是以秒为单位.如果为0则为无限存活.路径可有可无.是存你的session存放路径的.试试看吧.
      

  5.   

    我是这样用的
    session_register('cookiemname');
    session_register('cookiempsw');
    session_set_cookie_params(time()+1 [, '../recycle/']);
    $cookiemname="username";
    $cookiempsw="password";
    不行呀,wait!
      

  6.   

    是不是session_set_cookie_params(time()+1 [, '../recycle/']);这句出错.
    改成session_set_cookie_params(time()+1 , '../recycle/');
    那个[是代表这个是可选项在应用中不能用的.再试试看.
      

  7.   

    给你一个例子.可以设置可以查看的.<?php
    print session_set_cookie_params('100','../recycle/');//设置存活时间与路径.
    print "<BR>";
    print $aa=session_get_cookie_params();
    print "<BR>";
    foreach($aa as $key=>$val) {
    print $key.'=>'.$val;
    print "<BR>";

    }
    ?>
      

  8.   

    session_get_cookie_params();
    作用:
    取得当前 session所用的cookie的变量.
      

  9.   

    这次没有出错
    但是没有效果
    我把我的部题具体给你说一下吧:
    主页面index.php中require"function.php";
    index中有个登录框name,psw
    而它的处理函数在function.php中定义,
    当检查到符合条件时就
    session_register('cookiemname');
    session_register('cookiempsw');
    session_set_cookie_params(time()+1 , 'recycle/']);
    $cookiemname=$name;
    $cookiempsw=$psw;
    echo "登录成功!";
    echo "<META HTTP-EQUIV=REFRESH CONTENT='0;URL=index.php'>";
    我现在的问题是可以登录成功
    就是要用程序来控制它登录时session的时效和路径
      

  10.   

    session_set_cookie_params(time()+1 , 'recycle/']);
    这句能不出错吗?奇怪了.
    你这里多了一个字符型的空格.和一个]
    改后的.
    session_set_cookie_params(time()+1 ,'recycle/');
      

  11.   

    按照你的例了试了下,不行
    index.php中:
    <?
      require "function.php";
      session_start();
      session_set_cookie_params('1' , 'recycle/');
      session_get_cookie_params();
      $cookie_muser=$HTTP_SESSION_VARS['cookiemname'];
      $cookie_mpass=$HTTP_SESSION_VARS['cookiempsw'];
      if($load)
          ld($mname,$mpsw);   
    ?>
    function.php中
    <?
      function ld($name,$psw)
    {
    ...
    如上所述
    }
    ?>
    不行
      

  12.   

    不是我的不行.你知道你调用的是php.ini里的设置.我给你的那个方法他本身不修改php.ini本身.他的有效期只是在这段程序里.我在上一个程序里不是给了你一个得到当时设置的方法了吗?
    你是修改当时的session设置.可你调用是php.ini里的设置当然没有变化了.
    你用我给你的那段程序查看.
    <?php
    print session_set_cookie_params('100','../recycle/');//设置存活时间与路径.
    print "<BR>";
    print $aa=session_get_cookie_params();
    print "<BR>";
    foreach($aa as $key=>$val) {
    print $key.'=>'.$val;
    print "<BR>";

    }
    ?>
      

  13.   

    我在index中加了你这段代码
    显示时多了这个
    Array
    lifetime=>100
    path=>recycle/
    domain=>
    但对包含你这段代码的程序一点影响也没有
    session还是按php.ini里的设置运行
    时效没变,它也没保存在recycle/里面
      

  14.   

    http://www.gouhuo.com/index.php?recid=174&cate=php
    给你看篇文章不要被气到.
    这个文章里说有些版本不支持.
    你看看先.
      

  15.   

    那岂不是没办法了
    用cookie又不能保证客户端能用
    session又有这个鬼毛病
    那该怎么办呢
      

  16.   

    我加了
    setcookie("PHPSESSID",session_id(),time()+10,"/recycle/",""); 
    试了下
    第一次时可以
    以后就不行了
    不知道为什么

    给你分先吧
    这个东西真是烦
    谢了
      

  17.   

    哦,你在呀
    要不给我发邮件吧
    csdn好像有点慢
    [email protected]