另一个页面是否忘记session_start()了?刚接触常会有这样的错误

解决方案 »

  1.   

    楼上的正解,肯定没用session_start()
      

  2.   

    确定注册了用户名?session_register()
      

  3.   

    session保存的用户名就丢失???
    我想应该是调用页面没有session_start()吧。
      

  4.   

    按钮?打开的新网页?JavaScript?
      

  5.   

    如果确定程序没问题,打开sess文件看看是不是有内容
      

  6.   

    用这个保险
    session_id($session_id);
    session_start();
      

  7.   

    我是这样定义按的:
    <input type="button" name="Add" value="入库登记" class="Text80" onClick="javascript:window.location='./sto_movein_add.php'"> 。
        另外,session_start()肯定用了;
       session_id($session_id);   session_start();  这个方法我也试了,不过奇怪的是点击按钮后又产生了一个新的sessionId;
       用户名肯定也注册了。
        
      

  8.   

    Javascript传值好像是有问题,我通常的做法是把sessionID放在参数里一起传过去。
      

  9.   

    我前几天也碰到过这样的问题,后来发现是因为机器上使用了防火墙,而PHP的session好像默认是session cookie方式传送的,而我的防火墙规则禁止了cookie的使用,所以后续页面无法取得session值(虽然它的确在服务器上被建立了)。
    后来我按照php手册中的样子,使用url方式传送SID就好了,类似这样"page2.php?" . SID 或者"page2.php?sid=" . session_id();
    至于总是新生成sid,好像每个页面的调用都要以上面这样的方式来传递sid,否则就是重新生成一个新的sid了。
    这东西我也不是很懂,自己也搞的很郁闷,以上供参考了。
      

  10.   

    谢谢你了,rardge(Rardge)。这个方法我也试过了,方法可以。这样又遇到一个问题:当从一个页面跳到另外一个页面时,从后面的页面返回到前面的页面,如果加上sid的话会报错。我现在的做法是用文件保存 用户名。
      

  11.   

    session_start() 放在最最前面,前面的session—id不要
      

  12.   

    session可以跨页但不能跨域,你是不是跳的页面是其他网站的页面呢?
      

  13.   

    跳转回来会报错?我这里的结果是可以的呀。而且,你看手册上的例子,就是那个page2.php,它也说可以加上SID。
      

  14.   

    session_start() 前不能有输出
      

  15.   

    这样做你试一试:$HTTP_SESSION_VARS["name"]
      

  16.   

    跨页是没问题的,你把session改成文件形式存储,然后看看服务器生成的session有内容没.
      

  17.   

    session-cookie path不正确
    在php.ini设置session.cookie_path = /