<?
session_start(); 
setcookie("PHPSESSID",session_id(),0,"","",0); //加一行写COOKIE
$var="这是SESSION变量的值"; //var变量已经被作为session变量
$_SESSION['aa']=$var;
header("location:test1.php"); 
?>

解决方案 »

  1.   

    test.php:
    <?
    session_start(); 
    $var="这是SESSION变量的值"; //var变量已经被作为session变量
    $_SESSION['aa']=$var;
    header("location:test1.php"); 
    ?>test1.php
    <?
    session_start(); 
    $_SESSION['aa'];
    echo $aa; //输出:“这是SESSION变量的值”
    ?>----------------------------------------
    使用session时直接使用$_SESSION
    test.php:
    <?
    session_start(); 
    $var="这是SESSION变量的值"; //var变量已经被作为session变量
    $_SESSION['aa']=$var;
    header("location:test1.php"); 
    ?>test1.php
    <?
    session_start(); 
    echo $_SESSION['aa'];
    //echo $aa; //输出:“这是SESSION变量的值”
    ?>
      

  2.   

    使用session的时候
    用$_SESSION['abc'] = "asasas";之类的语句赋值
    调用的时候直接使用$_SESSION['abc']即可
    不用也不能像老版本一样先用session_register()注册session变量手册原文:
    If you are using $_SESSION (or $HTTP_SESSION_VARS), do not use session_register(), session_is_registered(), and session_unregister().
      

  3.   

    ray929(海豚) 的应该是正解.不过,以前也有过,代码正确,但使用了header后,死活就是出显示,解决方法为重新安装apache2.理由嘛,我也没弄明白,但,的确这么做就可以解决问题...可能是一个BUG吧
      

  4.   

    ob好了
    不然header会和很多东西过不去
      

  5.   

    我在是把register_globals设为on在用,但是听说这样不是很安全!不过我试了ray929(海豚)的方法,的确可以显示出来!谢谢诸位!!!