php登录:未定义索引

php登录:未定义索引,php,Php,我对php非常陌生,这是我第一次登录。 因此,当我从数据库输入有效的用户名和密码时,我会遇到以下两个错误: 注意:第3行未定义索引:brukernavn 注意:未定义索引:第4行的密码 $username = $_POST['brukernavn']; $password = $_POST['passord']; if($username&&$password) { $connect = mysql_connect("localhost", "root", "") or di

我对php非常陌生,这是我第一次登录。 因此,当我从数据库输入有效的用户名和密码时,我会遇到以下两个错误:

注意:第3行未定义索引:brukernavn

注意:未定义索引:第4行的密码
$username = $_POST['brukernavn'];
$password = $_POST['passord'];

if($username&&$password)
{

$connect = mysql_connect("localhost", "root", "") or die ("Cannot connect");
mysql_select_db("prosjekt") or die ("Cant find db");

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

$radnum = mysql_num_rows($query);

if ($radnum!=0)
{

while ($rad = mysql_fetch_assoc($query))
{
    $dbuser = $rad['brukernavn'];
    $dbpass = $rad['passord'];
}

if ($username==$dbuser&&$password==$dbpass)
{
echo "Logged in";
}
else
    echo "Wrong username or password";

}
else
    die("That user does not exist!");


}
else
    die("Please enter a username and password!");




?>

有人知道我哪里出错了吗?

您正在尝试访问两个尚未分配的变量:

$username = $_POST['brukernavn'];
$password = $_POST['passord'];
你可以:

  • 需要将登录代码包装在
    if
    语句中,以检查表单是否已提交

  • 在访问变量值之前,需要检查这些变量是否已设置

  • 希望这有助于

     <?
    
    $username = $_POST['brukernavn']; 
    $password = $_POST['passord'];
    
    if (isset ($_POST['submit'])) { // on form submit... make sure the html form input submit is name='submit' then this script will work
    
        if($username&&$password)
            {
    
            $connect = mysql_connect("localhost", "root", "") or die ("Cannot connect");
            mysql_select_db("prosjekt") or die ("Cant find db");
    
            $query = mysql_query("SELECT * FROM bruker WHERE brukernavn='$username'");
    
            $radnum = mysql_num_rows($query);
    
                if ($radnum!=0)
                    {
    
                    while ($rad = mysql_fetch_assoc($query))
                    {
                        $dbuser = $rad['brukernavn'];
                        $dbpass = $rad['passord'];
                    }
    
                    if ($username==$dbuser&&$password==$dbpass)
                    {
                    echo "Logged in";
                    }
                    else
                        echo "Wrong username or password";
    
                    }
                else
                    die("That user does not exist!");
    
    
            }
        else
            die("Please enter a username and password!");
    
        }
    
    
    ?>
    

    您应该阅读本主题,了解登录脚本的最佳实践:可能重复的