【问题标题】:Check username/email availability design question检查用户名/电子邮件可用性设计问题
【发布时间】:2011-03-30 20:42:49
【问题描述】:

我对编程和 html 设计还很陌生,想问一个有些人可能认为很愚蠢的问题。

这里是:

我有一个使用 jQuery 验证插件验证的注册表单。在此表单中,有一个电子邮件和密码输入,将用作登录凭据。

我想在这里做的是检查这封电子邮件是否在我的数据库(MySQL)中可用。如果是,将提示用户插入另一封电子邮件。如果不是,则用户继续声明该电子邮件。我该怎么做呢?我应该在表格中包含表格吗?例如,我是否应该使用带有“检查可用性”按钮的嵌入式表单,例如 Gmail 注册?

这有标准程序吗?请提出一个好的和简单的方法。

【问题讨论】:

    标签: php javascript jquery sql validation


    【解决方案1】:

    您可以使用 ajax 访问服务器端脚本以检查电子邮件的可用性,然后根据您从服务器获得的响应显示一些通知/错误消息。

    例如,在电子邮件字段的模糊事件中(当它失去焦点时),您可以触发一个使用 ajax 调用服务器端代码的事件,然后根据响应,您可以隐藏/显示特别包含错误消息。

    您的电子邮件字段可能是这样的...

    <input type="text" name="email" class="email" />
    

    jQuery 代码是这样的......

    $("input.email").blur( function() {
      $.ajax({
        url: 'ajax/getData.php?email=' + $(this).val(),
        success: function(data) {
          // Hide/show the error div over here
        }
      });
    });
    

    【讨论】:

    • 谢谢希维克。我认为应用 ajax 调用非常适合我的情况。
    【解决方案2】:

    您可以做的是,当用户在电子邮件字段 (onblur) 中完成输入内容后,通过 jQuery http 调用检查用户名的可用性。如果它不可用,您可能希望给他或她一个视觉指示(例如,将字段变为红色)以提示另一封电子邮件。

    请记住以下几点:

    • 如果您想要稳健,请始终在服务器端和客户端进行验证。
    • 在进行查找时,向用户提供某种视觉指示,表明搜索正在进行中,您也可以在搜索进行时禁用提交按钮。那时别忘了启用它:)

    【讨论】:

    • 感谢 Sam 的精彩建议。你提到的第二点我还没想到。防止用户单击按钮并进行未经授权的注册是有意义的。
    猜你喜欢
    • 2021-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-10
    • 1970-01-01
    相关资源
    最近更新 更多