检查用户名/电子邮件可用性设计问题
Posted
技术标签:
【中文标题】检查用户名/电子邮件可用性设计问题【英文标题】:Check username/email availability design question 【发布时间】:2011-03-30 20:42:49 【问题描述】:我对编程和 html 设计还很陌生,想问一个有些人可能认为很愚蠢的问题。
这里是:
我有一个使用 jQuery 验证插件验证的注册表单。在此表单中,有一个电子邮件和密码输入,将用作登录凭据。
我想在这里做的是检查这封电子邮件是否在我的数据库(mysql)中可用。如果是,将提示用户插入另一封电子邮件。如果不是,则用户继续声明该电子邮件。我该怎么做呢?我应该在表格中包含表格吗?例如,我是否应该使用带有“检查可用性”按钮的嵌入式表单,例如 Gmail 注册?
这有标准程序吗?请提出一个好的和简单的方法。
【问题讨论】:
【参考方案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 的精彩建议。你提到的第二点我还没想到。防止用户单击按钮并进行未经授权的注册是有意义的。以上是关于检查用户名/电子邮件可用性设计问题的主要内容,如果未能解决你的问题,请参考以下文章
oracle select 和 concurrent insert :: 检查电子邮件可用性
iOS Firebase数据库安全性。创建新的应用程序用户:检查用户名的存在