我有一个注册表单,我已经将电子邮件列设置为在数据库中是唯一的,因此如果用户使用已使用的电子邮件地址注册,则不允许重复的电子邮件。
我的问题是,如果用户使用新电子邮件注册(在数据库中表示没有)并且他/她点击太快或什么。第一个提交请求将成功插入数据库并返回错误消息“电子邮件不可用或未使用”。
如果用户点击太快,如何阻止第二次或其他请求?
注意,我需要在服务器端防止非客户端,如禁用按钮
答案 0 :(得分:0)
注册成功后,设置一个具有一些键值和时间的会话。因此,当注册请求到达服务器时,只需检查在短时间内是否已在同一会话中成功注册。如果是这样,请不要进入注册过程,只需显示成功消息,就像您为第一个请求显示的那样。
当出现验证错误时,您不需要做任何事情,因为第二次验证表单没有任何害处。
注意:如果您通过单击禁用提交按钮来实现此功能,那将是最简单的解决方案。