php表单提交错误500
问题描述:
我有一个简单的表单提交,用于个人使用和测试的问题。 不幸的是我没有服务器以查看日志或设置错误报告的访问,但我试图做到这一点在我的PHP代码:php表单提交错误500
error_reporting(-1);
ini_set('display_errors', 'On');
所以我有这样的形式:
<form class="form-signin" method="POST" action="check_login.php">
<h2 class="form-signin-heading">Please sign in</h2>
<label for="username" class="sr-only">Username</label>
<input type="username" id="username" name="username" class="form-control" placeholder="username" required autofocus>
<label for="password" class="sr-only">Password</label>
<input type="password" id="password" name="password" class="form-control" placeholder="Password" required>
<button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
</form>
而这种代码来验证它:
$login = array('example' => '3f76d6c6b8aa132e8306a0b4e6e02916',
'another' => 'ef872ac2466ca845aa0547e02554d7e1',
'alsoexample' => '3b3efb7345b89c6bbef71e5b6f257426');
if ($login[$_POST['username']] == md5($_POST['password'])) {
$_SESSION['user']='logged';
header('Location: index.php');
} else {
header('Location: login.php');
}
?>
但只要我打的提交按钮它返回一个500错误。 我在做什么错? 错误后我看了很多,但我找不到。非常感谢有人能帮助我!
答
我在我的服务器上测试了你的代码,它工作。
您分享的部分上面是否有更多代码?我认为那里会导致500错误。
也有可能header('location: ')
不工作,因为头文件已经发送完毕。
尝试使用这种替代它,看看是否导致错误:
echo'<script type="text/javascript">window.location.replace("/index.php")</script>';
echo'<script type="text/javascript">window.location.replace("/login.php")</script>';
你到底做下面这行 - >如果($登录[$ _ POST [“用户名”]] == md5($ _ POST ['password'])){ – theinarasu
它可能是错误的.htaccess –
'check_login.php'看起来像什么,你把错误报告语句吗?此外,在尝试查找问题时,请勿使用“标题”重定向。 – jeroen