Php 输入错误凭据后,重新加载登录屏幕并显示错误消息

Php 输入错误凭据后,重新加载登录屏幕并显示错误消息,php,Php,我在尝试更改某些代码时遇到问题。忽略代码中明显的安全问题,我在本练习中没有使用数据库 基本上,如果用户输入了错误的用户/密码,我需要显示错误的凭证错误消息。我不知道怎么做。我已经得到它,所以它重定向回登录页面,但我不能得到一个消息显示在该页面上 代码如下: login.php上的表单 <form action="login2.php" method="post"> <p>Username: <input type="text" name="userna

我在尝试更改某些代码时遇到问题。忽略代码中明显的安全问题,我在本练习中没有使用数据库

基本上,如果用户输入了错误的用户/密码,我需要显示错误的凭证错误消息。我不知道怎么做。我已经得到它,所以它重定向回登录页面,但我不能得到一个消息显示在该页面上

代码如下:

login.php上的表单

<form action="login2.php" method="post">

      <p>Username: <input type="text" name="username" /></p>

      <p>Password: <input type="password" name="password" /></p>

      <p><input type="submit" value="Login" name ="sub" /> </p>

</form>

用户名:

密码:

login2.PHP上的PHP

<?php

  session_start();

 // Checks the input from login.php

   if(isset($_POST['sub'])){

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

   if($username === 'test' && $password === 'pass'){

        $_SESSION['userid'] = true; header("Location: index.php"); die();

    }

        else 

    if($username !== 'admin' or $password !== 'password')$userError = 'Invalid credentials';

    {

        echo "Wrong username or password";

           $_SESSION["loginerror"] = 1;

        header("Location:login.php");

    }

 }    

// Allows ANY input to trigger access to the main site
?>

我已经看过了这个问题的解决方案,但它们似乎不起作用:

只需在表单顶部添加一个文本字段:

<p <?php if ($_SESSION["loginerror"] == 1 ){echo 'style="display: none;";} ?> > Invalid user/login</p>

您对此进行了测试吗<代码>解析错误:语法错误,在第1行的/path/to/file.php中出现意外的“>”
我已经尝试过了,但即使在我第一次加载页面时,它也会不断显示错误消息。