ホームページ >バックエンド開発 >PHPチュートリアル >ユーザーパスワードチェック(/etc/passwd)_PHPチュートリアル
/*
* etc.passwd.inc v1.0
*
* 構文:
* verifypasswd(文字列ユーザー名、文字列パスワード)
*
* 関数は 3 つの値のいずれかを返します:
* ファイル読み取りエラーがあった場合は -2
* パスワードが間違っている場合は -1
* ユーザー名が存在しない場合は 0
※1 パスワードが正しい場合
*/
function verifypasswd ($USERNAME, $PASSWORD) {
$fd = fopen( "/etc/passwd", "r");
$contents = fread($fd, filesize( "/etc/passwd"));
fclose($fd);
if (!$content) が -2 を返す;
$lines = split( "n", $contents);
$passwd = array();
for($count=0;$count
if ($user == $USERNAME) {
休憩;
}
}
if (!$user) が 0 を返す;
$cryptedpass = $pass;
$salt = substr($cryptedpass,0,2);
$Pass = crypt($PASSWORD,$salt);
if ($Pass == $cryptedpass) {
1 を返します;
} その他 {
-1 を返します;
}
}
?>