⭐各位遇到类似问题一定仔细查一遍文件名/微笑
问题遇到的现象和发生背景
写了一个网站,登录注册页面显示都完全正常:
但是当输入用户名密码后点击登录按钮的时候就出现以下报错:
跳转是loginaction,无论密码输入正确与否都是跳转到loginaction。login和loginaction在同目录下。
⭐问题升级了,我改了login里的代码把loginaction.php都删了还是跳转到这里,我吐了
我的解答思路和尝试过的方法
apache文件配置和LoadModule rewrite_module modules/mod_rewrite.so 开启均已更改完毕,重写.htaccess也写了放在了放代码的文件夹里,但还是告诉我404 我哭了
附代码
login.php
<!DOCTYPE html>
<html>
<head>
<title>登录</title>
<link rel="stylesheet" href="login.css">
<meta name="content-type"; charset="UTF-8">
</head>
<body>
<div id="bigBox">
<h1>登录页面</h1>
<form id="loginform" action="loginaction.php" method="post">
<div class="inputBox">
<div class="inputText">
<input type="text" id="name" name="username" placeholder="Username" value="">
</div>
<div class="inputText">
<input type="password" id="password" name="password" placeholder="Password">
</div>
<br >
<div style="color: white;font-size: 12px" >
<?php
$err = isset($_GET["err"]) ? $_GET["err"] : "";
switch ($err) {
case 1:
echo "用户名或密码错误!";
break;
case 2:
echo "用户名或密码不能为空!";
break;
} ?>
</div>
<div class="register">
<a href="register.php" style="color: white">注册账号</a>
</div>
<div class="fgtpwd">
<a href="#" style="color: white">忘记密码</a>
</div>
</div>
<div>
<input type="submit" id="login" name="login" value="登录" class="loginButton m-left">
<input type="reset" id="reset" name="reset" value="重置" class="loginButton">
</div>
</div>
</div>
</form>
</body>
</html>
loginaction.php
<?php
header("Content-Type: text/html;charset=utf-8");
// $Id:$ //声明变量
$username = isset($_POST['username']) ? $_POST['username'] : "";
$password = isset($_POST['password']) ? $_POST['password'] : "";
$remember = isset($_POST['remember']) ? $_POST['remember'] : ""; //判断用户名和密码是否为空
if (!empty($username) && !empty($password)) { //建立连接
$conn = mysqli_connect('localhost', 'root', '123456', 'SafeAskM'); //准备SQL语句
$sql_select = "SELECT username,userpass FROM ask_user WHERE username = '$username' AND userpass = '$password'"; //执行SQL语句
$ret = mysqli_query($conn, $sql_select);
$row = mysqli_fetch_array($ret); //判断用户名或密码是否正确
if ($username == $row['username'] && $password == $row['password'])
{ //选中“记住我” //本来在登录界面有一个记住我的单选框,但是后来觉得太难看删掉了,但是代码里没有删,反正不会报错就行了,懒得改了
if ($remember == "on")
{ //创建cookie
setcookie("", $username, time() + 7 * 24 * 3600);
} //开启session
session_start(); //创建session
$_SESSION['user'] = $username; //写入日志
$ip = $_SERVER['REMOTE_ADDR'];
$date = date('Y-m-d H:m:s');
$info = sprintf("当前访问用户:%s,IP地址:%s,时间:%s /n", $username, $ip, $date);
$sql_logs = "INSERT INTO logs(username,ip,date) VALUES('$username','$ip','$date')";
//日志写入文件,如实现此功能,需要创建文件目录logs
$f = fopen('./logs/' . date('Ymd') . '.log', 'a+');
fwrite($f, $info);
fclose($f); //跳转到loginsucc.php页面
header("Location:loginsucc.php"); //关闭数据库,跳转至loginsucc.php
mysqli_close($conn);
}
else
{
//用户名或密码错误,赋值err为1
header("Location:login.php?err=1");
}
} else { //用户名或密码为空,赋值err为2
header("Location:login.php?err=2");
}
?>
感觉代码没有问题,应该是环境配置的问题