不可登录帐户的最佳实践

时间:2009-07-22 17:24:38

标签: php user-accounts

我想知道创建不可登录帐户的最佳做法是什么。在StackOverflow上,有一个社区Wiki帐户,我假设无法登录。

我应该如何为不可记录的帐户编写脚本?如果有一个我不想访问的帐户,我是否应该设置参数,因为您无法登录ID小于0的帐户?或者我应该只是手动定义配置ID中无法登录的ID?还是有更好的方法?

4 个答案:

答案 0 :(得分:5)

对我来说,您应该在帐户数据中使用一个标志,以便设置或撤消日志记录功能。

可以非常轻松地使用sql级别的查询强制执行此功能。

如下的查询:

select wathever from user where loggging=1 and user="aUser" and passwd="password"

可以做到这一点。

回答你的评论: 也许使用colum对你来说似乎并不高效,但你必须考虑专业人士:

  • 您可以在单个图层中获得有关用户的信息,而不是分散在数据库,配置文件或监视器之间

  • 您可以撤消或授予任何帐户记录功能,而无需修改配置文件

答案 1 :(得分:2)

您可以在用户表上设置“标记”:

loggable      int(1)       default 1

然后你可以查看你的脚本:

//... data retrieve login ...
if($userRow['loggable'] == 1) {
    //User can login, do stuff
} else {
    //Tell him that he can't login
}

答案 2 :(得分:0)

向帐户添加“可记录”字段。 它可以扩展,以防你最终拥有大量不可登录的帐户。

答案 3 :(得分:0)

您可以将空密码设置为不可登录。

扩展Eineki的SQL:

select whatever from user where loggging=1 and user="aUser" and
    passwd="password" AND passwd IS NOT NULL