我已经成功创建了一个注册页面,但是我现在尝试使用php和PDO创建一个登录页面,html方面的表单我没有任何问题,但是在php方面,我似乎提交登录信息时出现错误404,这是做错事情的原因...这是代码:
<?php
session_start();
$errmsg_arr = array();
$errflag = false;
//configuration
$server = "127.0.0.1";
$dbusername = "root";
$dbpassword = "";
$db="movie1";
// Database connection
try {
$handle = new PDO("mysql:host=$server;dbname=$db", "$dbusername", "$dbpassword");
$handle->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "connected";
} catch (PDOException $e) {
die("something failed");
}
// new data
$user = $_POST['username'];
$password = $_POST['password'];
if($user == '') {
$errmsg_arr[] = 'username required'
$errflag = true;
}
if($password == ''){
$errmsg_arr[] = ' password required';
$errflag = true;
}
// query
$result = $handle->prepare("SELECT * FROM user WHERE username= ? AND password = ?");
$result->bindParam('?', $user);
$result->bindParam('?', $password);
$result->execute();
$rows = $result->fetch(PDO::FETCH_NUM);
if ($rows > 0) {
header("location: home.php");
}
else{
$errmsg_arr[]= 'Username and password not found';
$errflag = true;
}
if($errflag) {
$_SESSION['ERRMSG_ARR'] = $errmsg_arr;
session_write_close();
header("location:index.php");
exit();
}
?>
这是html代码:
<!DOCTYPE html>
<html lang="en">
<meta charset="UTF-8">
<title>log in</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
<body>
<form class="w3-container w3-card-4" action="login.php" method="post">
<h2 class="w3-text-black">Log in</h2>
<p>Log in</p>
<p>
<label class="w3-text-black"><b>username</b></label>
<input class="w3-input w3-border" name="username" type="text" placeholder="username"></p>
<p>
<label class="w3-text-black"><b>Password</b></label>
<input class="w3-input w3-border" name="password" type="text" placeholder="password"></p>
<p>
<button class="w3-btn w3-black">Log in</button></p>
</form>
</body>
</html>
但是,一旦我输入了正确的登录信息并提交了我的表格并被错误404问候,我该怎么办?