我正在编写一个PHP站点,用户在PHPPage1中输入密码,然后将其作为POST提交给PHPPage2进行验证。我需要PHPPage2弹出一个无效密码的错误框,当用户点击该警告框的OK按钮时,页面会重定向到PHPPage1。
我的代码如下,问题是,对于无效密码,页面显示警告框但不会重定向到PHPPage1。实际上它看起来像继续在PHPPage2上读取其余的脚本而不是重定向。
请注意,我添加了error_reporting(0);
让您知道它,所以您可以告诉我这是否是导致问题的原因。我知道我不应该使用它,因为它隐藏了它检测到的任何错误。另请注意,此脚本之前可以使用并重定向到PHPPage1,只有当我添加<script>
警报框时才开始解决此问题。我需要一个警报框而不仅仅是一个回音。你能说出这段代码有什么问题吗,我认为它应该有用。
<?php
error_reporting(0);
//Validate user
if ($_POST['Password'] != "Servermaster")
{
echo "<script type='text/javascript'>alert('The password " . $_POST['Password'] . " is unknown.');</script>";
header("Location: http://stackoverflow.com/");
exit;
}
?>
答案 0 :(得分:1)
发送输出后无法重定向。启用error_reporting:error_reporting(E_ALL)
和ini_set('display_errors', true)
,您将看到错误报告。注释掉回声线,它会起作用。