你的前后两名,变量名好好像有点不同。if($uname==""||$passwd=="") //session用户变量$unameif(!isset($_SESSION[username])) //session用户变量$username

解决方案 »

  1.   

    不好意思,修改后的:<?
    session_start();
    if($uname==""||$passwd=="")
    {
    echo '填写有误,请<a href="531_login.htm">重试</a>。';
    exit;
    }
    $link=mysql_connect();
    mysql_select_db('test');
    $query="select passwd from user where username='".$uname."'";
    $result=mysql_query($query);
    if($answer=mysql_fetch_array($result))
    {
    if($passwd==$answer["passwd"])
    {
    $_SESSION[username]=$username;
    mysql_close($link);
    echo '登录成功,请<a href="532_welcome.php">进入</a>';
    exit;
    }
    mysql_close($link);
    echo '密码错误,请<a href="531_login.htm">重试</a>';
    exit;
    }
    mysql_close($link);
    echo '该用户不存在,请<a href="531_login.htm">重试</a>';
    echo $_SESSION[username];
    ?>---------------------------------
    532_welcome.php
    ------------------------------------
    <?
    session_start();
    $head="<html><head><title>欢迎</title></head><body>";
    $end="</body></html>";
    if(!isset($_SESSION[username]))
    {
    header("Location:531_login.htm");
    exit;
    }
    $link=mysql_connect();
    mysql_select_db('test');
    $query="select id from user where username='".$uname."'";
    $result=mysql_query($query);
    $answer=mysql_fetch_array($result);
    $id=$answer["id"];
    mysql_close($link);
    echo $head;
    echo "<p>";
    echo $uname;
    echo ",你好,你的ID是".$id;
    echo "</p><p>";
    echo '<a href="loginout.php">注销</a>';
    echo $end;
    ?>
      

  2.   

    好象你那个if($passwd==$answer["passwd"])后面少了个else吧.
      

  3.   

    $query="select id from user where username='".$uname."'";中你的$uname并没有付值啊.
    应该加上$uname=$_SESSION[username];吧.