登录中的错误消息(HTML和PHP)

时间:2016-12-07 12:29:28

标签: php html

我尝试编写登录程序,我可以在其中显示错误消息。我在HTML中的登录表单如下所示:

<form id="login" action="data/login.php" method="post">
    <H2>Rgister</H2>
    Your login and password:
    <br><br>
    <div id="login-name" style="margin-top:20px;">Login:</div><div id="login-fld" style="margin-top:20px;"><input name="username" class="form-login" title="Username" value="" size="30" maxlength="2048" /></div>
    <div id="login-name">Pass:</div><div id="login-fld"><input name="password" type="password" class="form-login" title="Password" value="" size="30" maxlength="2048" /></div>
    <br><br><br>
    <input type="image" src="obr/login-klw.png" alt="Submit" width="103" height="42" style="margin-left:90px;">
    <br><br>

    <?php if ($_GET["log_err"]) { if ($_GET["rsn"] == "pass") { ?>
    <html><body><h3>Error no 1</h3></body></html>
    <?php } else { ?>
    <html><body><h3>Error no 2</h3></body></html>
    <?php } exit; } ?>
</form>

和php的代码:

... [ question to the database and return in $result object ] ...

        if ($result->num_rows == 0)  {
            setcookie('logged_in', false, time() + 600, '/');
            die(header("location:../index.html?log_err=true&powod=pass"));
        }
        else  {
            setcookie('logged_in', $_POST['username'], time() + 600, '/');
            header("Location: /AAA/app.html");
        }
    }
    else  {
        setcookie('logged_in', false, time() + 600, '/');
        die(header("location:../index.html?log_err=true&powod=empty"));
}

和两条消息(&#34;错误号1&#34;&#34;错误号2&#34;)我每次加载时都会看到  这一页。我不知道为什么以及如何调试这部分代码。有人可以帮帮我吗?

问题是这个表单看起来像这样: enter image description here

我一直看到错误按摩。

2 个答案:

答案 0 :(得分:0)

解决:第一个文件名应为&#34; index.php&#34;不是&#34; index.html&#34;,第二代替:

<?php if (isset($_GET['log_err'])) if ($_GET["log_err"]) { if ($_GET["rsn"] == "pass") { ?>

应该是:

select * from canews
where news_dpu <= convert(datetime, '12.01.2016',103)

在应用程序启动时,没有$ _GET,因此它的存在应首先进行测试。 感谢您的回复。

答案 1 :(得分:0)

这是你将一遍又一遍地面对的问题。在开发模式下,学习将变量转储到屏幕上以查看服务器理解的内容。

最简单的形式就是你需要做的就是你的代码。

<?php var_dump($_GET); ?>

然后,也许,var_dump($_GET["log_err"]);等等。

其他正确的答案,并且哦,检查在发布代码之前没有留下var_dump()语句。

祝你好运。