2012-07-16 181 views
0

我有一个登记表,我已经设定电子邮件列在DB独特所以如果用户与使用的电子邮件地址寄存器被允许没有重复的电子邮件。codeigniter多次提交按钮点击。 (不会阻止多个提交或点击)

我的问题是,如果有新的电子邮件用户注册(指没有在DB)和他/她点击过快或什么。第一个提交请求将成功插入数据库并返回“电子邮件不可用或不可用”的错误消息。

如何我防止第二或休息的请求,如果用户点击太快了?

注意,我需要防止服务器端没有客户端像禁用按钮

+1

脚本按预期运行。这里有什么问题?为什么你不能禁用客户端的按钮? – itachi 2012-07-16 07:03:55

+0

如果用户有js禁用 – vzhen 2012-07-16 07:33:12

回答

1

当注册成功设置了一些关键价值和时间的会话。所以当一个注册请求到达服务器时,只需在短时间内检查是否已经在同一个会话上注册成功。如果是这样,不要进入注册过程,只需显示成功消息,就像您为第一个请求显示的那样。

当有验证错误,你不需要做任何事情,因为在验证表单第二次没有坏处。

注:如果您已经通过禁用提交按钮点击后会是最简单的解决方案来实现这一点。