session_start();是放在页面最前的,而且每页都要写才有效。

解决方案 »

  1.   

    你好,试过了,session_start();放在页面最前面也不行。还是出那个错误。
      

  2.   

    随便写个test.php:
    <?
    session_start();
    session_register("test");
    $test = "This is a test.";
    ?>
    只执行这个,看是否出错。
      

  3.   

    你好:第一个叶面first.php
    session_start();
    require("include/shopcart.inc");  
    $MyCart = new Shopcart;
    session_register("MyCart");
    $MyCart->AppendProduct($ProductID, $OptionID, $Quantity);
    //没有错误
    第二个叶面second.php
    session_start();
    require("include/shopcart.inc");  
    $product = $MyCart->GetProduct(); //这里出错
      

  4.   

    你必须在第二个页面里使用$MyCart之前定义class Shopcart;
      

  5.   

    奇怪,为什么你要注册Class变量,同样都需要在使用前声明的。
    直接使用不就行了,你还要保存什么数据吗?
      

  6.   

    确实用Class变量保存数据。调用语句中没有空格。包含文件也没有输出。
      

  7.   

    我找到解决办法了。
    在include()与类对象调用之间加上:
    session_write_close();
    session_start();
    就可以瞒天过海了。还是要谢谢两位热心人。