2009-07-22 37 views
2

我想知道创建不可登录账户的最佳实践是什么。在StackOverflow上,我假设的社区Wiki帐户无法登录。非可登录账户的最佳实践

我应该如何处理非登录帐户的脚本?如果有一个我不想访问的帐户,我应该设置参数,例如您无法登录ID小于0的帐户?或者我应该手动定义配置ID中无法登录的ID?或者,还有更好的方法?

回答

5

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

此功能可以很容易地在sql级别执行查询。

的查询,如:

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

可以做的伎俩。

回答您的评论: 也许使用科拉姆似乎没有有效的方你,但你必须要考虑亲:

  • 您对您的用户在单层的信息,而不是散落在beetween数据库,配置文件,或wathever

  • 可以撤销或授予日志功能的任何帐户,而无需修改配置文件

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 
} 
+1

但不会添加整个列简单地摆脱1个或2的用户是无效的? – 2009-07-22 17:30:57

0

添加“为loggable”字段账户。 它可以扩展以防万一你有很多不可登录账户。

0

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

为了延长Eineki的SQL:

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