PHP ログイン スクリプトのどこに「password_verify」を配置すればよいですか?

Mary-Kate Olsen
リリース: 2024-11-25 19:55:13
オリジナル
615 人が閲覧しました

Where Should I Place `password_verify` in My PHP Login Script?

ログイン スクリプトのどこにpassword_verifyを実装しますか?

ログイン システムのセキュリティを強化するには、ログイン スクリプトでpassword_verify 関数を使用することが重要です。この関数は、送信された平文のパスワード ($_POST['password']) とデータベースに保存されている暗号化されたパスワード ($row['password']) を比較します。これを統合する方法は次のとおりです。

<?php
...
// ... Existing code ...
if ($row = $query->fetch()) {
    if (password_verify($_POST['password'], $row['password'])) {
        // Correct password - authenticated!
        ...
    } else {
        // Incorrect password - display error
        ...
    }
}
...
ログイン後にコピー

password_verify を利用すると、暗号化された形式を明らかにすることなくパスワードを安全に比較でき、ユーザー データの整合性が確保されます。

$results = の実装$stmt->fetch(PDO::FETCH_ASSOC);

ユーザー詳細の取得を簡素化するには、PDO::FETCH_ASSOC メソッドを使用できます。キー名が列名に対応する連想配列を返します:

<?php
...
$query = $conn->prepare("SELECT * FROM user_accounts WHERE email=:email");
$query->bindParam(':email', $_POST['email']);
$query->execute();
$results = $query->fetch(PDO::FETCH_ASSOC);
...
ログイン後にコピー

これで、連想キーを使用してユーザー情報に直接アクセスできます:

$_SESSION['email'] = $results['email'];
$_SESSION['first_name'] = $results['first_name'];
ログイン後にコピー

以上がPHP ログイン スクリプトのどこに「password_verify」を配置すればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート