大虾们  我用的tp框架 ,写了一个session,我想实现不关闭浏览器session就永久有效(类似cookie),关闭浏览器session消失。因为我在一个也没可能要停留操作半个小时,但是当我提交时,就提示session过期,白白操作那么多东西了。疯了 跪求

解决方案 »

  1.   

    session 默认就是浏览器关闭失效啊,看你的代码是如何写的。
      

  2.   

    session没有指定有效期,周期是当这个会话结束时,就会清除session。
      

  3.   

    tp 提供了自己的 session 操作函数
    不要自行其事的乱来
      

  4.   

    $_SESSION['grant'][$row['operator_id']]=$rights['rights'].',';我就是这样写的 。
    我这个网站也记录cookie了 ,cookie也是设置的浏览器进程 ,应该不会影响session吧,我测试的是每次都提示seesion没了 。session不是24分钟失效吗?
      

  5.   


    你是从哪里得出的结论的?能把你最后得出的结论的论据找到么?session的id也是靠cookie记录,否则你就要使用request query传递了。你尽量不要在框架下,还使用原生的php session操作方式,而是去看框架的手册,看看怎么使用session、
      

  6.   

    好吧  我用tp自带的session试一下
      

  7.   

    session(array("name"=>$row['operator_id'],"prefix"=>'grant',"expire"=>86400));
    session($row['operator_id'],$rights['rights'].',');
    我都这样写了,但是半个小时左右session就又没了。求原因
      

  8.   

    session(array("name"=>$row['operator_id'],"prefix"=>'grant',"expire"=>86400));  在tp里我这样初始化的session   不对吗
      

  9.   

    session初始化设置如果session方法的name参数传入数组则表示进行session初始化设置,例如:session(array('name'=>'session_id','expire'=>3600));支持传入的session参数包括:参数名
     说明
     
    id
     session_id值
     
    name
     session_name 值
     
    path
     session_save_path 值
     
    prefix
     session 本地化空间前缀
     
    expire
     session.gc_maxlifetime 设置值
     
    domain
     session.cookie_domain 设置值
     
    use_cookies
     session.use_cookies 设置值
     
    use_trans_sid
     session.use_trans_sid 设置值
     
    type
     session hander类型,可以使用hander驱动扩展
     Session初始化设置方法 无需手动调用,在App类的初始化工作结束后会自动调用,通常项目只需要配置SESSION_OPTIONS参数即可,SESSION_OPTIONS参数的设置是一个数组,支持的索引名和前面的session初始化参数相同。默认情况下,初始化之后系统会自动启动session,如果不希望系统自动启动session的话,可以设置SESSION_AUTO_START为false,例如:'SESSION_AUTO_START' =>false关闭自动启动后可以项目的公共文件或者在控制器中通过手动调用session_start或者session('[start]') 启动session。