我正在创建一些软件,其中人们有生日列表,他们可以将项目放在他们的列表中,并且其他人可以查看。我的数据库中有一个表,其中所有内容都被组织称为birthday lists
. 它是这样安排的:
一个示例行是:
person 字段是项目的所有者,每个人的所有项目都在同一个表中。id、name、link 和 description 是非常不言自明的。数字字段是查看列表页时的显示方式,所以数字 10 会出现在 0 之上,优先级与本题无关。这是我在浏览器中查看 Jimmy 的列表时发生的情况的一个示例。(别担心,我最终会到达我的观点)
我添加了很多图片,因为我从来没有任何意义,这是我可以解释事情的最佳方式:)
无论如何,这是另一张显示示例数据库的图片。
如果我在浏览器中查看 Russell 的列表,它会是这样的:
注意 $$$$ 项目是如何在订书机上方的,因为它的编号更高。这就是它的用途。如果我以 Russell 的身份登录并查看此列表,我会看到按钮显示,Move Up
并且Move Down
会增加和减少该项目的 number 属性。我将用一个示例场景来演示我的问题。
假设 Jimmy 登录并且他有很多列表项。他将一些向上移动了很多次,因此一个项目的数值远远高于其他所有项目的数值。然后他向上移动另一个项目,重新加载页面,并认为它没有做任何事情,因为第二个项目的数值仍然小于第一个项目的数值。我希望这是有道理的。另一个问题是,如果两个项目的数值相同,这是一个巨大的问题。关键是,我拥有它的方式行不通。
有谁知道我可以让这个数字正常工作的方法,并告诉我如何做到这一点,以便用户可以在他们的列表中上下移动项目?(另外,如果我的数据库组织不好,我也很想知道 :))
提前致谢!
结束信息,以备不时之需:
- 我正在用 PHP 5 和 MySQL 构建它
- 这是在带有 GoDaddy 的远程 Linux 服务器上