-2

我已经实现了一个包含多个用户的 PHP 网页,同时使用该应用程序。在应用程序中,用户可以填写一些输入字段并将数据发送到后端。后端进行一些计算并将其发送到 MySQL 表。问题是当 2 个或更多用户同时使用该应用程序时,它会将所有用户输入数据保存到数据库中。这是一个例子:

用户 1 输入:“这应该写入 db”

用户 2 输入:“这不应该写入数据库:

当用户 1 按下提交按钮时。然后将数据发送到后端文件。然后后端文件将数据写入 MySQL 表中。问题出在这里:尽管用户 2 没有按下提交按钮,但用户 1 和用户 2 的输入都写入了数据库。

关于如何解决这个问题的任何想法?

4

2 回答 2

1

在写入数据库之前不要使用该文件。直接写入数据库。MySQL 将为您处理并发和锁定。

如果由于某种原因您不想在写入数据库时​​阻塞,您可以INSERT DELAYED根据您的表类型尝试。其他排队系统可用。

于 2013-07-30T12:18:52.443 回答
1

您可以简单地将所有用户的数据存储在他们的 $_SESSION 中,并且只有在用户单击其保存按钮后,您才能将该用户的数据保存到 DB。

如果您想存储一些临时的每用户数据,请改用会话。
它们正是为此目的而设计的。

于 2013-07-30T12:19:42.603 回答