3

xampp をインストールしたので、ウェブサイトをオフラインでテストできます。現在、未定義のインデックスまたは未定義の変数のエラーが多数発生していますが、修正方法はわかっています。ログインはオンラインで機能するようになりましたが、xampp では機能しません。コードは間違っていません。データベースをオンラインからオフラインにインポートしました。何が問題なのかを突き止めましたが、解決方法がわかりません。

ログインの詳細が正しいかどうかをテストするコードを次に示します。

$Blowfish_Pre = '$2a$05$';
$Blowfish_End = '$';
$hashed_password = crypt($password, $Blowfish_Pre . $salt . $Blowfish_End);

//check to see if they match
if ($username==$dbusername&&$hashed_password==$dbpassword){

アカウントのオフラインエコー$hashed_password$2a$05$CEDaiUETMOTuZ1tzSX1dW.1rmbYfiu1Hf6jnZyJ5DouQOIHEPwXiW

$hashed_passwordアカウントのエコーされたオンラインは

$2J7rPSsTYb1Q

クリプトはオンラインとオフラインで動作が異なると判断しましたか? これはなぜですか、どうすれば解決できますか?

4

2 に答える 2

4

crypt()システムが提供するものに応じて、異なるハッシュ アルゴリズムを使用します。PHP 5.3 以降では、「独自の実装が含まれており、システムが 1 つ以上のアルゴリズムをサポートしていない場合にそれを使用します」。

オフライン バージョンでは、冒頭でわかるようにフグを使用しています$2a$。あなたのオンライン版はいくつかのフォールバックを使用しています。

参照: http://php.net/manual/en/function.crypt.php

于 2012-09-12T09:27:58.057 に答える