zh:auth:mysql_smf
Simple Machines Forum
使用Simple Machines Forum来验证.
在SMF 1.1.4 和 Dokuwiki 2007-06-26b版本下测试通过。
在此假设所有的账户将由SMF创建和维护,如果用户有多个户组,将使用其第一个用户组。
对管理员账户来说,只需要将*_members表中的memberName字段加入到conf/local.php中,示例如下:
$conf['superuser']='%smfadmin_memberName'
或者(我发现的一个更简单方法)你只需要简单的告诉Dokuwiki我想要SMF的管理员组的所有人员都变为Dokuwiki的'superusers'。 — Chris Rowson 2008-02-16 00:35
$conf['superuser'] = '@Administrator';
同时还需要改变以下查询的表名前缀(这里是 smfforum)。如果你的表名没有前缀,那就什么都不要做了,只需要保留下划线就可以了。
$conf['auth']['mysql']['checkPass'] = "SELECT passwd FROM smfforum_members WHERE memberName = '%{user}' AND passwd = SHA1(concat(LOWER('%{user}'), '%{pass}'))"; $conf['auth']['mysql']['getUserInfo'] = "SELECT passwd AS pass, realName AS name, emailAddress AS mail FROM smfforum_members WHERE memberName = '%{user}'"; $conf['auth']['mysql']['getGroups'] = "SELECT groupName as `group` FROM smfforum_membergroups g, smfforum_members u WHERE u.memberName = '%{user}' AND u.ID_GROUP = g.ID_GROUP"; $conf['auth']['mysql']['getUsers'] = "SELECT DISTINCT memberName AS user FROM smfforum_members AS u LEFT JOIN smfforum_membergroups AS g ON u.ID_GROUP=g.ID_GROUP"; $conf['auth']['mysql']['FilterLogin'] = "u.memberName LIKE '%{user}'"; $conf['auth']['mysql']['FilterName'] = "u.realName LIKE '%{name}'"; $conf['auth']['mysql']['FilterEmail'] = "u.emailAddress LIKE '%{email}'"; $conf['auth']['mysql']['FilterGroup'] = "g.groupName LIKE '%{group}'"; $conf['auth']['mysql']['SortOrder'] = "ORDER BY u.memberName";
— Mykhaylo Sorochan 2007-12-08 22:35
zh/auth/mysql_smf.txt · 最后更改: 由 agile.guo