php登录脚本中未定义的索引

Dym*_*ond -1 php

可能重复:
PHP:"注意:未定义的变量"和"通知:未定义的索引"

我创建了一个登录脚本.它运行良好,即使我收到错误消息,它也会回应它应该是什么.但是有了错误信息.

我的错误消息说

注意:未定义的索引:C中的用户名:第5行的...\member.php

这是我在member.php上的代码

<?php

session_start();

if ($_SESSION['username'])
echo "Welcome, ".$_SESSION['username']."!<br /><a href='logout.php'>Logout</a>";

else
    die ("You must be logged in");
?>
Run Code Online (Sandbox Code Playgroud)

这不是很多代码,所以我不知道这个问题是什么.我将登录脚本粘贴到,如果问题可能存在?

<?php

session_start();

$username = $_POST['username'];
$password = $_POST['password'];

if ($username&&$password)
{

$connect = mysql_connect("localhost", "root", "") or die("Couldt connect!");
mysql_select_db("guestbook") or die ("couldt find db");

$query = mysql_query("SELECT * FROM users WHERE username='$username'");

$numrows = mysql_num_rows($query);

if ($numrows!=0)
{
//Code to loging

while ($row = mysql_fetch_assoc($query))
{

$dbusername = $row['username'];
$dbpassword = $row['password'];

}

//Check to se if they match!

if($username==$dbusername&&$password==$dbpassword)
{
echo "You're logged in! You'll be redirected to members page in 3 sec";
$_SESSION['username']=$dbusername;
header( 'refresh: 3; member.php' );
}
else 
echo "Incorrect password!";

}
else
die("Thats user dont exist");

}

else
die ("Please enter username and password");
?>
Run Code Online (Sandbox Code Playgroud)

Ans*_*son 6

$ _SESSION ['username']是未设置的未定义索引.您应该使用isset()来检查是否设置了变量.更改:

if ($_SESSION['username'])
Run Code Online (Sandbox Code Playgroud)

至:

if ( isset($_SESSION['username']) )
Run Code Online (Sandbox Code Playgroud)