仔细检查验证PHP和Ajax

时间:2013-03-27 05:17:43

标签: php ajax validation

目前我正在使用Ajax来检查注册验证,但我觉得如果互联网连接不够好,有时候Ajax无法正常工作,它会让用户注册相同的用户名。那么如何仔细检查寄存器验证以避免数据库中出现重复的用户名?

3 个答案:

答案 0 :(得分:1)

如果数据库中的字段设置为UNIQUE,则不会出现问题,因为会返回错误,即

CREATE TABLE user (
    username VARCHAR(20) UNIQUE NOT NULL,
    ...
)

如果在此表上运行INSERT但已经使用了潜在的用户名,则会出现错误。

我是否应该提及虽然客户端验证在弹出div并突出显示span的网页上非常好用,但应始终重新检查验证服务器端。

答案 1 :(得分:0)

除了将列username上的约束设置为唯一之外,您应该在创建记录之前进行查询以检查是否存在任何错误,听起来您只依靠Javascript来验证输入。

首先解决您的验证!不要依赖javascript做它,需要它在前端(html视图)和后端代码(php)

答案 2 :(得分:0)

这只是一个想法,我很确定您对输入的更改或模糊事件进行验证。但注册将通过提交按钮完成。如果我没错,只需在registration-proccess页面添加一些脚本,检查用户名是否存在,如果存在,只需重定向回到注册页面,$_SESSION或{{1}上有一些错误变量}。该错误变量可用于告诉用户什么是错误的。 。祝你好运!