PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php-跟踪数据更改大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我在以PHPMysqL开发的以市场研究数据库为中心的网站上工作.
它由两个主要部分组成-一个部分,用户在其中插入和更新自己的数据(例如,一个带有user_id字段的表T),另一部分,网站管理员可以插入新记录或更新现有记录(同一表).

显然,在某些情况下,最终用户将由管理员覆盖其数据,而在其他情况下,最终用户将更新管理员输入的数据(两种方法都可以).

要求是,如果最终用户最后一次更新某个字段,则用蓝色突出显示视图/编辑表单(例如),如果管理员要“责备”,则用红色突出显示.

我正在寻找一种有效且一致的方法来实现这一目标.

到目前为止,我有以下选择:

>对于表T中的每条记录,添加另一条记录(char(1)),如果最终用户插入/更新了该字段,则在其中写入“ U”;如果管理员这样做,则在其中写入“ A”.呈现视图/编辑表单时,请使用此信息突出显示每个字段.
>创建一个新表H,其中存储了包含诸如user_id,field_name,last_update_user_id之类的内容的编辑历史记录.在主表T中更新字段时,使表H为最新.呈现视图/编辑表单时,使用此信息相应地突出显示每个表单字段.

这些选项的优点/缺点是什么?你能建议别人吗?

@R_403_1964@:

我想这只是取决于您想要成为什么样的人.

您的第一种方法的优点是易于实现,更新和利用非常简单,并且只会稍微增加存储需求,但是就存储的信息量而言,这也是最低要求.

如果您采用第二种方法并存储了更完整的历史记录,那么将来如果需要添加“编辑历史记录”,则已经为此设置了一些东西,并且有大量数据在等待.但是,如果最终您不再需要这些数据,那将是一个浪费.

或者,如果您想要两全其美,可以将它们结合起来.保留完整的编辑历史记录,但还要更新主记录中的单字符标志.这样,您无需对历史进行任何处理即可找到最新的编辑内容,只需查看标志即可.但是,如果您确实需要完整的历史记录,则可以使用它.

就个人而言,我宁愿保留比我当时所需要的更多的信息.存储空间非常便宜,而且您永远都不知道何时会派上用场.我可能会比您提出的建议走得更远,并且也做到了,以便编辑历史记录可以跟踪它们的更改以及之前/之后的值.这对于调试非常方便,并且在将来根据项目的实际需求可能会很有用.

大佬总结

以上是大佬教程为你收集整理的php-跟踪数据更改全部内容,希望文章能够帮你解决php-跟踪数据更改所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: