login.php
<?php
session_start(); $usename="admin";$usepass="admin"; if(trim($usename)<>"" && trim($usepass)<>"")
{

$sessname=$usename;
$sesspass=$usepass;
session_register($sessname);
session_register($sesspass); //跳转页面
Header("Location: ./main.php");  
//exit;

}
else
{
echo "你的用户名或密码错误!!";
}



?>
main.php
<?php
session_start();
error_reporting(7);


echo "sessname:$sessname<BR>";
echo "sesspass:$sesspass<BR>";?>
在页面上只显示sessname: sesspass:  
为什么会丢失session呢?

解决方案 »

  1.   

    把代码贴出来
    跳转之后的页面有没有session_start() ?
      

  2.   

    login.php
    <?php
    session_start(); $usename="admin";$usepass="admin"; if(trim($usename) != "" && trim($usepass) != "")
    {

    $_SESSION['SESSNAME'] = $usename;
    $_SESSION['SESSPASS'] = $usepass; //跳转页面
    Header("Location: ./main.php");  
    //exit;

    }
    else
    {
    echo "你的用户名或密码错误!!";
    }
    ?>
    main.php
    <?php
    session_start();
    error_reporting(7);


    echo "sessname:$_SESSION['sessname']<BR>";
    echo "sesspass:$_SESSION['sesspass']<BR>";?>