【问题标题】:codeigniter multiple submit button clicks. ( Not prevent multiple submission or clicks )codeigniter 多次提交按钮点击。 (不阻止多次提交或点击)
【发布时间】:2012-07-16 06:48:57
【问题描述】:

我有一个注册表单,并且我已经将电子邮件列设置为在数据库中是唯一的,因此如果用户使用使用的电子邮件地址注册,则不允许重复电子邮件。

我的问题是,如果用户使用新电子邮件注册(意味着数据库中没有)并且他/她点击太快或什么。第一次提交请求将成功插入数据库并返回错误消息“电子邮件不可用或未使用”。

如果用户点击太快,我如何阻止第二个或其余请求?

注意,我需要防止在服务器端而不是客户端像禁用按钮

【问题讨论】:

  • 脚本按预期运行。这里有什么问题?为什么不能禁用客户端的按钮?

标签: php forms codeigniter


【解决方案1】:

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

当出现验证错误时,您无需执行任何操作,因为第二次验证表单并没有什么坏处。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-29
    • 2021-08-02
    • 2012-07-26
    • 1970-01-01
    • 2018-11-13
    • 1970-01-01
    • 2017-09-18
    • 2011-02-02
    相关资源
    最近更新 更多