PHPパスワード変更スクリプトは常にデータベースから間違ったパスワードを検出します

ナイジェルジャスティン

phpmyadminのデータベースがあり、そこにパスワード列があります。パスワードを変更できるスクリプトを作成したいのですが、現在のパスワードがデータベース内のパスワードと同じであれば、変更は成功します。ただし、現在のパスワードがデータベース内のパスワードと一致しない場合、パスワードの変更は失敗します。

試してみると、現在のパスワードがデータベースのパスワードと同じであっても、常に間違ったパスワードを取得したり失敗したりします。Postmanを使ってチェックします

これは郵便配達員郵便配達員からの出力です

これは私のデータベースデータベースです

これは私のPHPスクリプトです

<?php

if ($_SERVER['REQUEST_METHOD']=='POST'){

    $id = $_POST['id'];
    $currentpassword = $_POST['currentpassword'];
    $newpassword = $_POST['newpassword'];

    require_once 'connect.php';

    $sql = "SELECT * FROM user_account WHERE id='$id' ";

    $response = mysqli_query($conn, $sql);

    //echo mysqli_num_rows($response);


    if(mysqli_num_rows($response) > 0){

        $row = mysqli_fetch_assoc($response);

        if (password_verify($currentpassword, $row['password']) ){

            $updatepass = "UPDATE user_account SET password='$newpassword' WHERE id='$id' ";

                if(mysqli_query($conn, $updatepass)) {

                    $result["success"] = "1";
                    $result["message"] = "success";

                    echo json_encode($result);
                    mysqli_close($conn);
                }
                else{

                    $result["success"] = "0";
                    $result["message"] = "error!";
                    echo json_encode($result);

                mysqli_close($conn);
                }

        }else{
            $result['success'] = "0";
            $result['message'] = "Wrong password.";
            echo json_encode($result);

            mysqli_close($conn);
        }

    }

}


?>
会計士م

マニュアル

password_verify —パスワードがハッシュと一致することを確認します

パスワードを生のパスワードとして保存します。関数がtrueを返すように、password_hash()関数を使用してパスワードハッシュパスワードとしてデータベースに保存する必要があります。password_verify

//for example replace this
$query = "insert into user_account(name, email, password) values ('testing','[email protected]','1234567')";
//with this
$query = "insert into user_account(name, email, password) values ('testing','[email protected]','" . password_hash('1234567') . "')";

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

間違ったパスワードはdjangoのデータベースにアクセスできます

分類Dev

Ansible Vaultはどのようにして間違ったパスワードを検出しますか?

分類Dev

暗号化されたパスワードはデータベースに保存されますが、どうやら間違っていますか?

分類Dev

laravelを使用してデータベースのプレーンパスワードを暗号化されたパスワードに変換しますか?

分類Dev

MySQLはスクリプト内のパスワードをデータベースとして扱います

分類Dev

パスワード更新のためにデータベースからのパスワードを比較する

分類Dev

キーストアのパスワードをパスワードなしから空白以外のパスワードに変更します

分類Dev

SQLCipherでFMDBを使用してデータベースを復号化し、間違ったパスワードを使用したsetkeyは常にYESを返します

分類Dev

wpa_supplicant-パスワードが間違っていることを検出しましたか?

分類Dev

パスワード検証は常にtrueを返します

分類Dev

誤って md5 を使用してパスワードをハッシュしてしまいました。全員のパスワードを変更するスクリプトを作成することはできますか?

分類Dev

ajaxとphpを使用してログインすると常に間違ったパスワード

分類Dev

パスワードが間違っている場合、ノードの暗号解読は常にエラーをスローしますか?

分類Dev

PythonスクリプトでLinuxのユーザー名またはパスワードを変更する

分類Dev

スクリプトには、パスワードプロンプトなしのsudoが必要です。どこで私は間違えましたか?

分類Dev

Woocommerceがパスワードを失ったリダイレクトはワードプレスに行きますパスワードを忘れましたが私のカスタムのパスワードを忘れたページには行きません

分類Dev

mysqlでワイルドカードクエリを逆にします(ワイルドカードはデータベースに常駐できますか?)

分類Dev

PHPパスワード検証は常にfalseを返します

分類Dev

FtpWebRequestは、正しいパスワードを使用して以前に正常に接続した後、間違ったパスワードを無視します

分類Dev

JUnitは、正しいアプリケーションコンテキストをロードしているにもかかわらず、間違ったデータベースへのアクセスをテストします

分類Dev

mysqlデータベースに接続してパスワードを変更します

分類Dev

「サイトまたはアプリでのデータ侵害によりパスワードが公開された。Chromeでは「SITENAME」のパスワードを今すぐ変更することをお勧めします。」

分類Dev

gdm3ログイン画面に間違ったパスワードを入力した後に発生する遅延を変更しますか?

分類Dev

Wi-Fiネットワークで間違ったパスワードの試行をログに記録する方法はありますか

分類Dev

PHPクエリスクリプトを介してphpMyAdminルートパスワードを変更する方法

分類Dev

パスワードを変更したリモートデスクトップWebページにアクセスできません

分類Dev

データベースからデータを取得するためにWebサービスを呼び出すために、データベースのユーザーとパスワードをパラメーターに渡す必要があります

分類Dev

MySQLデータベースでスクリプトをチェックしているときに、誤った電子メールまたはパスワードでエラーが発生しました

分類Dev

PasswordChangeViewがPasswordChangeDoneViewにリダイレクトしない(またはパスワードを変更する)

Related 関連記事

  1. 1

    間違ったパスワードはdjangoのデータベースにアクセスできます

  2. 2

    Ansible Vaultはどのようにして間違ったパスワードを検出しますか?

  3. 3

    暗号化されたパスワードはデータベースに保存されますが、どうやら間違っていますか?

  4. 4

    laravelを使用してデータベースのプレーンパスワードを暗号化されたパスワードに変換しますか?

  5. 5

    MySQLはスクリプト内のパスワードをデータベースとして扱います

  6. 6

    パスワード更新のためにデータベースからのパスワードを比較する

  7. 7

    キーストアのパスワードをパスワードなしから空白以外のパスワードに変更します

  8. 8

    SQLCipherでFMDBを使用してデータベースを復号化し、間違ったパスワードを使用したsetkeyは常にYESを返します

  9. 9

    wpa_supplicant-パスワードが間違っていることを検出しましたか?

  10. 10

    パスワード検証は常にtrueを返します

  11. 11

    誤って md5 を使用してパスワードをハッシュしてしまいました。全員のパスワードを変更するスクリプトを作成することはできますか?

  12. 12

    ajaxとphpを使用してログインすると常に間違ったパスワード

  13. 13

    パスワードが間違っている場合、ノードの暗号解読は常にエラーをスローしますか?

  14. 14

    PythonスクリプトでLinuxのユーザー名またはパスワードを変更する

  15. 15

    スクリプトには、パスワードプロンプトなしのsudoが必要です。どこで私は間違えましたか?

  16. 16

    Woocommerceがパスワードを失ったリダイレクトはワードプレスに行きますパスワードを忘れましたが私のカスタムのパスワードを忘れたページには行きません

  17. 17

    mysqlでワイルドカードクエリを逆にします(ワイルドカードはデータベースに常駐できますか?)

  18. 18

    PHPパスワード検証は常にfalseを返します

  19. 19

    FtpWebRequestは、正しいパスワードを使用して以前に正常に接続した後、間違ったパスワードを無視します

  20. 20

    JUnitは、正しいアプリケーションコンテキストをロードしているにもかかわらず、間違ったデータベースへのアクセスをテストします

  21. 21

    mysqlデータベースに接続してパスワードを変更します

  22. 22

    「サイトまたはアプリでのデータ侵害によりパスワードが公開された。Chromeでは「SITENAME」のパスワードを今すぐ変更することをお勧めします。」

  23. 23

    gdm3ログイン画面に間違ったパスワードを入力した後に発生する遅延を変更しますか?

  24. 24

    Wi-Fiネットワークで間違ったパスワードの試行をログに記録する方法はありますか

  25. 25

    PHPクエリスクリプトを介してphpMyAdminルートパスワードを変更する方法

  26. 26

    パスワードを変更したリモートデスクトップWebページにアクセスできません

  27. 27

    データベースからデータを取得するためにWebサービスを呼び出すために、データベースのユーザーとパスワードをパラメーターに渡す必要があります

  28. 28

    MySQLデータベースでスクリプトをチェックしているときに、誤った電子メールまたはパスワードでエラーが発生しました

  29. 29

    PasswordChangeViewがPasswordChangeDoneViewにリダイレクトしない(またはパスワードを変更する)

ホットタグ

アーカイブ