【问题标题】:How can I count and limit form submission?如何计算和限制表单提交?
【发布时间】:2015-04-17 02:42:05
【问题描述】:

我有一个将数据提交到 mysql 数据库的表单。提交表单后,它会重新加载,用户填写表单并一遍又一遍地提交(每次都会向他们提出不同的问题)。

我想在用户转到另一个页面(结果)之前将用户可以提交表单的次数限制为 3 次。我不确定如何实现这一目标。我创建了一个计数器,每次用户在我的数据库中提交表单时都会记录下来(代码如下),但我现在不知道该怎么做。我没有使用ajax。非常感谢任何帮助。

$sql="UPDATE counter SET counter = counter + 1 WHERE id=$id";
mysqli_query($con, $sql);

【问题讨论】:

  • 添加一个列来计算他们访问了多少次,然后设置一个条件语句来查看该列是否被访问了 X 次。 IE。 if((condition) >=3){...}
  • 会话可能是另一种看待方式
  • @Patrick 有点,但会话总是会被破坏,所以最好在用户登录时将这些值硬编码在他们的数据库中。但这是一个很好的建议。
  • db 如果表单不在某种登录后面,也无济于事。销毁会话也会销毁将数据库计数与用户联系起来的令牌。
  • 我想这真的取决于用户是否登录。如果用户未登录,则没有可靠的方法来确保您正在更新的列是正确的用户。这几乎使会话仅作为一种不可靠的方法。 - 编辑 - 马克打败了我。

标签: php mysql forms


【解决方案1】:

在您的更新中尝试另一个条件:

$sql="UPDATE counter SET counter = counter + 1 WHERE id=$id AND counter < 4";
mysqli_query($con, $sql);

但是你的目标我真的不清楚……

【讨论】:

    猜你喜欢
    • 2011-12-10
    • 1970-01-01
    • 2016-11-16
    • 1970-01-01
    • 2014-06-16
    • 1970-01-01
    • 1970-01-01
    • 2011-12-31
    • 2015-10-18
    相关资源
    最近更新 更多