подтверждение пароля perl - PullRequest
2 голосов
/ 10 декабря 2010

Может ли кто-нибудь дать мне пример кода, позволяющего пользователю дважды ввести пароль, сравнить его и напечатать текст, если они верны или нет, например, когда мы создаем нового пользователя.Заранее спасибо ...

Ответы [ 3 ]

2 голосов
/ 10 декабря 2010

С perldoc -f crypt ,

$pwd = (getpwuid($<))[1];

system "stty -echo";
print "Password: ";
chomp($word = <STDIN>);
print "\n";
system "stty echo";

if (crypt($word, $pwd) ne $pwd) {
    die "Sorry...\n";
} else {
    print "ok\n";
}

Изменить в соответствии с вашими потребностями.

0 голосов
/ 10 декабря 2010

склеп - красная сельдь.

system "stty -echo";
print "Password: ";
chomp(my $password = <STDIN>);
print "\nPassword again: ";
chomp(my $check_again = <STDIN>);
print "\n";
system "stty echo";

if ($password ne $check_again) {
    die "Sorry...\n";
} else {
    print "ok\n";
}
0 голосов
/ 10 декабря 2010

вот ответ, основанный на подсказке ephemient .. Мне не нужна первая строка, которую я удалил, и в случае, если ne предполагается, что eq, вероятно, означает, что равен:) это выглядит, это работает ..

system "stty -echo";
print "Password: ";
chomp($word = <STDIN>);
print "Password again: ";
chomp($pwd = <STDIN>);
print "\n";
system "stty echo";

if (crypt($word, $pwd) eq $pwd) {
    die "Sorry...\n";
} else {
    print "ok\n";
}
...