1

假设我有一个带有两个输入字段的登录表单,即电子邮件地址和密码。当用户单击提交按钮时,如果响应是否定的,则帐户不存在或密码不正确(假设我有另一个用于此身份验证的 php 文件),我希望在表单下方显示一条错误消息(相同的登录页面)。我怎样才能做到这一点?

PS。我在网上搜索了一下,似乎可以通过隐藏部分完成此类任务,就像这篇文章一样。因此,如果可能,请提出一些更好的方法。

PS2。我认为这可以用 ajax 来完成(用 JQuery 可能更好)。如果是这样,一个简单优雅的例子将不胜感激。

结果最后,我找到了一篇很好的帖子,解释了如何使用 JQuery 实现我所期望的,你可能会发现这个链接很有帮助。

4

2 回答 2

1

我想你正在寻找这样的东西:

        $.ajax({
            url: 'php/ajax.php',
            type: 'GET',
            dataType: 'html',
            timeout: 1000,
            error: function () {
                notifyLoadFail();
            },
            success: function (data) {
                notifyLoadFinish(data);
            }
        });

        function notifyLoadFail(){
            $('form[0]').next().append('<h2>Fail. All your base are belong to us.</h2>');
        }

更多信息在这里。

http://api.jquery.com/jQuery.ajax/

于 2013-05-06T22:01:10.877 回答
1

您可以在一个 php 文件中进行验证以及显示错误:

<?php
if (isset($_POST['submit'])) { // form has been sent

    // do validation here, for example...
    if (!isset($_POST['user']) || strlen(trim($_POST['user'])) == 0)
        $error[] = "Please enter your username!";

    if (!isset($error)) { // no error => proceed

        // do something
    }
}
?>
<!-- next line will display $error if it is set -->
<?php=(isset($error)?'There were errors: ' . implode(',',$error):'')?>
<form method="post">
<input type="text" name="user" />
<input type="submit" name="submit" />
</form>    
于 2013-05-06T22:04:01.090 回答