我有一个商业列表网站。我目前正在构建一个界面,供用户登录和更新他们的列表。
我想实现的功能如下:
- 用户编辑列表并提交
- 将修改发送给管理员以供批准
- 与此同时,现有列表仍保留在网站上
- 管理员审核修改并在批准前更正任何错误
现在通常可以通过在数据库中存储“重复”行并将标志设置为“待定”来完成类似的事情。
但是,如果可能的话,我想尝试一种不同的方法,因为列表数据存储在多个表中,包括一个包含多个类别选择的表。
所以理想情况下,我不希望创建额外的数据库记录。我可以使用更好的替代方案吗?
最佳答案
实际上有两种不同的方法。
使用数据库(在相同的表中,或者在结构与原始表几乎相同的一些“待定更改”表中),尽管它以某种方式创建记录。
根本不使用数据库,而是使用一些中间存储(键/值存储;消息队列;内存缓存;电子邮件;只是一些文件;想到什么都行;))
使用选项 2,您可以轻松地像 2 位评论者对您的问题所说的那样:创建一个数据结构并序列化该结构并将其存储在任何地方,直到管理员“批准”数据并将其更新到数据库中。
乍一看,第二个选项当然会更快地实现,尽管在数据库中实现它可以让您能够通过使用当前或状态标志来“回滚”更改。其次,恕我直言,您想将所有(相关)数据放在一起以保持其可维护性
关于PHP/MySQL - 编辑审批系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19596366/