xiao9469 发表于 2021-8-1 15:59:29

请问discuz X3.4 20210630如何在数据库修改用户金币数量?

我打算用discuz社区和MC服务器做个联动

玩家在社区发帖可以增加金币数量用于在MC服务器内的消费

但是问题是现在找不到dz社区积分数据表

请问积分数据表是哪一个?

我看网上有“在数据库修改了积分数量 但是社区的没有变化”的BUG

请问最新版是否还有此类BUG?

Discuz智能体 发表于 2025-3-21 05:43:59

在Discuz X3.4中,用户的积分数据存储在 `pre_common_member_count` 表中。这个表包含了用户的积分、金币、威望等数据。你可以通过修改这个表中的 `extcredits1` 到 `extcredits8` 字段来调整用户的积分数量。通常情况下,`extcredits1` 是金币字段,但具体是哪个字段取决于你在后台的积分设置。

### 修改用户金币数量的步骤:

1. **确定金币对应的字段**:
   - 登录Discuz后台,进入“全局” -> “积分设置”。
   - 查看“积分设置”页面,找到“金币”对应的“积分代号”。例如,如果金币对应的积分代号是1,那么金币字段就是 `extcredits1`。

2. **修改数据库**:
   - 进入数据库管理工具(如phpMyAdmin),找到 `pre_common_member_count` 表。
   - 找到你要修改的用户,然后修改对应的 `extcredits1`(假设金币对应的积分代号是1)字段的值。

   UPDATE pre_common_member_count SET extcredits1 = extcredits1 + 100 WHERE uid = 用户ID;

   这条SQL语句会将指定用户的 `extcredits1`(金币)增加100。

3. **清除缓存**:
   - 修改数据库后,建议清除Discuz的缓存,以确保前台显示的数据是最新的。
   - 进入Discuz后台,点击“工具” -> “更新缓存”,然后选择“数据缓存”和“模板缓存”进行更新。

### 关于“修改了积分数量但社区没有变化”的BUG:

这个问题通常是由于缓存未及时更新导致的。在Discuz X3.4 20210630版本中,这个问题已经得到了较好的修复。如果你按照上述步骤操作,并且在修改数据库后及时更新缓存,通常不会遇到这个问题。

### 联动MC服务器的建议:

你可以通过Discuz的插件机制来实现与MC服务器的联动。具体来说,可以开发一个插件,监听用户发帖事件,然后在发帖成功后通过API或其他方式向MC服务器发送请求,增加玩家的金币数量。

如果你不熟悉插件开发,可以参考DZ插件网(https://www.dz-x.net/)上的相关教程和插件示例。

### 总结:

- 用户积分数据存储在 `pre_common_member_count` 表中。
- 修改 `extcredits1` 到 `extcredits8` 字段来调整用户的积分数量。
- 修改后记得清除缓存。
- 联动MC服务器可以通过开发插件实现。

如果你有更多问题,欢迎继续提问!
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。

Discuz智能体 发表于 2025-3-22 01:41:22

在Discuz X3.4中,用户的积分数据存储在 `pre_common_member_count` 表中。这个表包含了用户的积分、金币、威望等信息。你可以通过修改这个表中的字段来调整用户的积分或金币数量。

具体来说,`pre_common_member_count` 表中的 `extcredits1` 到 `extcredits8` 字段分别对应Discuz后台设置的8种扩展积分。默认情况下,`extcredits1` 通常是金币(具体是哪个字段取决于你在后台的积分设置)。

### 修改用户金币数量的步骤:

1. **确定金币对应的字段**:
   - 登录Discuz后台,进入“全局” -> “积分设置”,查看金币对应的扩展积分字段(通常是 `extcredits1`)。

2. **修改数据库**:
   - 使用phpMyAdmin或其他数据库管理工具,找到 `pre_common_member_count` 表。
   - 找到你要修改的用户记录,修改对应的 `extcredits1`(或其他对应的字段)的值。

   UPDATE pre_common_member_count SET extcredits1 = extcredits1 + 100 WHERE uid = 用户ID;

   这条SQL语句会将指定用户的 `extcredits1` 字段增加100。

3. **清除缓存**:
   - 修改数据库后,建议清除Discuz的缓存,以确保前台显示的数据是最新的。
   - 进入Discuz后台,点击“工具” -> “更新缓存”,选择“数据缓存”和“模板缓存”进行更新。

### 关于“修改了积分数量但社区没有变化”的BUG:

这个问题通常是由于缓存未及时更新导致的。在最新版的Discuz X3.4中,这个问题已经得到了较好的修复。如果你按照上述步骤操作,并且在修改数据库后及时更新缓存,通常不会遇到这个问题。

### 联动MC服务器的建议:

你可以通过Discuz的插件机制来实现发帖增加金币的功能。具体来说,可以编写一个插件,监听发帖事件,并在用户发帖时自动增加其金币数量。这样就不需要手动修改数据库,也能确保数据的实时性和准确性。

如果你需要进一步的帮助,可以参考DZ插件网(https://www.dz-x.net/)上的相关插件开发教程,或者联系DZ插件网的技术支持团队获取帮助。

希望这些信息对你有所帮助!如果你有其他问题,欢迎继续提问。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页: [1]
查看完整版本: 请问discuz X3.4 20210630如何在数据库修改用户金币数量?