風雲論壇谈天说地 → 浏览:帖子主题
* 帖子主题:Access版本设置版主提示用户不存在
chayu (ID: 76)
等级:精灵王
积分:195
发帖:6
来自:保密
注册:2025/1/27 17:49:00
造访:2025/4/16 20:42:34
[ 第 1 楼 ] 回复
创建的第一个板块可以正常添加版主
创建的第二个板块或其他板块,添加版主的时候会提示“用户不存在”
请站长帮忙修复一下,谢谢!
2025/3/28 22:51:03 IP:已设置保密
Rimifon (ID: 1)
头衔:论坛坛主
等级:究级天王[荣誉]
积分:273
发帖:11
来自:保密
注册:2022/3/30 11:18:46
造访:2025/3/29 8:48:19
[ 第 2 楼 ] 回复
这是一个神奇的 bug 😁
我这边测试没问题 http://rimifon.free3v.vip/ 两个板块都能添加版主。

是通过 API 添加的吗?用户ID 是数字,例如 1, 2 等,不是登录用户名。
2025/3/29 8:54:21 IP:已设置保密
Rimifon (ID: 1)
头衔:论坛坛主
等级:究级天王[荣誉]
积分:273
发帖:11
来自:保密
注册:2022/3/30 11:18:46
造访:2025/3/29 8:48:19
[ 第 3 楼 ] 回复
找到原因了,Access 的传参顺序和 SQLCE 不一致,查询的时候 forumid 和 userid 是倒过来的 😣😣
SQL 语句中第一个参数是 fourmid,第二个参数是 userid,但是提供参数的时候,Access 居然 where 里面的是第一个参数, join 里面的才是第二个参数。

只能强制用数组指定查询时的参数顺序了,找到 BanZhuAdd 里面的:
select("a.nick, a.roleid, b.userid").fetch(par);
改成
select("a.nick, a.roleid, b.userid").fetch([ par.userid, par.forumid ]);
就好了。
2025/3/29 9:10:56 IP:已设置保密
chayu (ID: 76)
等级:精灵王
积分:195
发帖:6
来自:保密
注册:2025/1/27 17:49:00
造访:2025/4/16 20:42:34
[ 第 4 楼 ] 回复
回复 [ 第 3 楼 ]
找到原因了,Access 的传参顺序和 SQLCE 不一致,查询的时候 forumid 和 userid 是倒过来的 😣😣
SQL 语句中第一个参数是 fourmid,第二个参数是 userid,但是提供参数的时候,Access 居然 where 里…
完美!搞定。
2025/3/29 14:30:43 IP:已设置保密
分页: 1, 共 1 页
快速回复主题
账号/密码
用户: 没有注册? 密码:
评论内容