最好的登录方式?

时间:2012-07-05 14:26:53

标签: php authentication login admin

我是php的新手,如果可能,请提供一些信息。 我目前正在尝试建立一个网站,以便在我的校友中获得优异成绩。

我的主要问题是哪个是创建登录脚本的最佳或更专业的方式(注意:只有一个用户,管理员才有权访问)???

  • 第一,检查表格中发布的数据是否匹配 那些在数据库中的表'admin'中的那些。所以我必须在我的数据库中创建一个表,只添加一个用户admin,然后用sql查询检查匹配
  • 通过制作这样的脚本来
  • 或第二个:

    if(($_post['username'] == 'admin') && ($_post['password'] == 'password')){
        echo "Welcome admin";
    }else{
        echo "No access";
    }
    

5 个答案:

答案 0 :(得分:2)

答案 1 :(得分:2)

为什么不制作users表?在该表中,一个字段可以命名为“admin”,“0”表示不是admin,“1”表示admin。

对于密码,您总是希望使用某种哈希:http://php.net/manual/en/function.hash.php

然后,在检查登录凭据时,您可以执行

if( !empty($_POST['password'] && hash('sha256', $_POST['password']) = {database password}  ){
  // password's okay
}
  • 切勿在数据库中存储纯文本/未加密码的密码。

注意:您的数据库“password”将是散列/ salted值,而不是实际密码。

答案 2 :(得分:0)

如果您的数据存储在数据库中总是更好,在这种情况下,您应该加密您的用户数据。

答案 3 :(得分:0)

您当然不应该在代码中存储密码和管理员用户名。数据库是这种数据的更安全可靠的存储。

如果您有一个用户表,那么您可能在其中有一个字段指示用户权限级别,或者您甚至可能有一个具有权限的单独表。在这种情况下,您可以拥有 admin 权限并将其分配给某个用户(一个或多个,如您所愿)。

答案 4 :(得分:0)

当然首先。在任何时候,您都可以添加一些用户,而不是通过更改源代码,而是通过在数据库中添加条目。请注意,有时我们暗示只有一个用户可以访问,但在我们注意到另一个用户必须具有访问权限之后。最好做到可扩展。