我正在构建一个基于 php 的登录系统,用户需要输入用户名和密码才能登录。我的问题是“如何在同一页面上显示“无效的用户名或密码”错误消息?我尝试了很多事情,包括尝试使用查询字符串 (/?error=1);它确实通过在同一页面上显示错误消息解决了我的问题,但是所有 CSS 都刚刚从页面上消失了,我找不到修复它的方法(虽然不是因为缺乏尝试)。所以我决定尝试一种更简单的方法,但显然行不通。那么,我该如何解决呢?这是我的 PHP 代码:
<?php
session_start();
$db = mysqli_connect("localhost","root","","combination");
if(isset($_POST['login_btn'])){
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$password=md5($password);
$sqlquery="SELECT * FROM registration WHERE username='$username' AND password='$password'";
$result = mysqli_query($db,$sqlquery);
if(mysqli_num_rows($result)==1){
$_SESSION['message']="You are now logged in.";
$_SESSION['username'] = $username;
$_SESSION['password'] = $password;
header("location:loginhome.php");
}
else{
$_SESSION['message']="Incorrect Username or Password.";
header("location:login.php");
echo '<h3>Invalid username or password</h3>';
}
}
?>
Run Code Online (Sandbox Code Playgroud)