session_id($a);
要放在session_start()前面的。

解决方案 »

  1.   

    session不开启,你怎么注册session变量
      

  2.   

    晕倒,我是想一个客户端,在其Cookie有效期内,无论打开几次浏览器,只使用一个SessionID,然后根据Cookie保存的SessionID,查询服务器端的Session文件中的信息。
    但是有个问题,是关于Cookie与Session文件的保存时间的问题,Cookie先过期或Session先过期,如何妥当处理?
      

  3.   

    cookie的生命周期是你给出来的 setcookie("name","value",time()+秒数)session是在当前的一个网页进程中有效。  无论打开几次浏览器,只使用一个SessionID 你的想法不可行
      

  4.   


    Session过期,但Cookie不过期
    只有一种思路:
    Session和cookie不同名,才可能
    否则 Session会覆盖cookie
      

  5.   

    楼上给出的解答,都不太理想
    若Cookie过期时间设定是1年。setcookie('sid' , session_id() , time()+3153600 , '/');1、Cookie过期机制,是从文件生成后的1年,还是我最后一次刷新页面后的1年?
    2、Session过期机制,是Sess_**文件生成后的一段时间,还是最后一次访问后,到下一次访问的间隔时间?
    3、若Cookie过期时间设定是1年,但Session过期(好像是24分钟),Session过期后,依据我上面帖出的程序,会发生什么样的情况呢?
      

  6.   

    现在不考虑DBSession,因为太简单
      

  7.   

    想了一晚上,搞定了。
    To:li1229363
     DBSession确实太简单了,早就在使用了,而且和我问的问题是两个方向,不相关。
    现在是Cookie+Session+DBSession一起使用,保证DB中录入最有价值的信息,且不会漏掉
    结帖