gpt4 book ai didi

php - 如何使用 PHP/MySQL 创建和构建虚拟积分系统

转载 作者:行者123 更新时间:2023-11-29 01:44:27 26 4
gpt4 key购买 nike

在 PHP/MySQL 中构建虚拟积分系统的最佳方式是什么?

我显然需要为每笔交易(借方/贷方)创建一个表格。我想我需要该表中的以下列:

  • TransactionID(从 1 开始自动递增的唯一交易 ID)

  • UserID(主用户表中的用户唯一 ID)

  • 类型(赚取、购买、花费等)

  • ItemID(如果花费在某个项目上)

  • 金额(正数或负数)。

问题:

1) 我是否需要此表中的任何其他列?

2) 为此我需要任何其他表格吗?

例如,我是否需要另一个表来跟踪每个用户的总数?或者我会简单地将每个用户的总交易额计算为他们所有交易的总和吗?

起初,这个信用系统将纯粹是“玩钱”,但我确实希望在未来添加一个“购买信用”选项,所以也许我应该为第 3 方支付处理器添加一个列唯一交易 ID?或者我应该为购买的积分创建一个单独的表,然后通过我的脚本将两者联系在一起(例如,总积分 = 获得的积分 + 购买的积分 - 花费的积分)?

除了回答我上面的问题之外,我非常感谢任何和所有的见解和想法,包括关于如何解决这个问题的具体文章的链接,因为我以前从未编写过这样的程序。

谢谢!

最佳答案

一些笔记。

我认为,如果您想构建一个处理财务的可靠系统,那么使用金融领域的一些基本概念是有意义的。我不想说您必须完全实现所有会计功能,但很多事情对我来说似乎都是合理的。

首先,金融交易涉及将资金从一个帐户转移到另一个帐户,因此我将使用 account_id 而不是 user_id。每个用户可能有多个帐户,每个帐户都有一个类型(查找)和货币。此外,我会避免使用“用户”一词,而使用“派对”(派对角色关系模型)。

其次,总是至少有两方参与:资金从一个账户转移到另一个账户。购买元素时,个人账户余额减少,组织账户余额增加。

此外,我不会使用 item_id,而是使用 event_id 之类的东西。每笔交易都与一个业务事件相关联。事件是系统中可能发生的各种事件的公共(public)父表。 Event 的每个详细信息表都将包含特定于事件类型的信息。例如,您可以有 purchase_eventdeposit_event 等。

因为 transaction 表是许多(可能数千)插入的主题,所以我不会在您每次需要帐户余额时都查询它。在 account 表中保持综合余额是有意义的。

我希望这是有道理的。

关于php - 如何使用 PHP/MySQL 创建和构建虚拟积分系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10687274/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com