使用PHP生成和分发唯一的用户名

时间:2012-04-11 22:25:45

标签: php mysql mysqli

我试图从服务器端生成唯一的用户名,并使用他们在注册到登录表单时输入的个人详细信息将这些用户名分发给用户。这是为了制作更安全的用户名并避免黑客入侵。

所以,这是我的问题:如何从他们的个人信息中生成独特且不可预测的用户名,如姓名,姓氏,年龄和出生日期。用户名不应该像我们现在在我们的注册表单中那样遵循任何顺序,例如gmail。没有什么比使用名字的第一个名字或3个名字等等。 用户名应该是完全不可预测的。

提前致谢!

2 个答案:

答案 0 :(得分:1)

为什么你的名字取决于他们的细节呢?只需生成一些统一分布的字母串,如vwneuibx(足够长,这样你就不会很快用完名字),没有人会猜到这样的名字,但这并不容易记住它。

更安全的方法是使用一些盐和您指定的个人数据。

答案 1 :(得分:0)

idk也许是这样的......

function random_name($length){
    $characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    $name = "";

    for($i = 0; $i < $length; $i++){
        $name .= $characters[mt_rand(0,strlen($characters) - 1)];

        }
        return $_POST['first'].$name;

    }