$salt 変数を使用して sha256 ハッシュされたパスワードを作成しようとしています。しかし、何らかの理由でそれはうまくいきません。今これに 3 時間取り組んでいて、頭をもぎ取ろうとしています。これが私のコードです:
もう一度やってみます、ごめんなさい(;o;)
OK、パスワードにsha256を追加しようとするまで、私のスクリプトはうまくいきました。次のユーザーを作成するためのファイルを取得しました。
$salt = "lollol";
$password = hash('sha256', $salt.$_POST['password']);
$sql = ("INSERT INTO members (username, password, name, last_name,company)VALUES('$username', '$password', '$name', '$last_name', '$company')")or die(mysql_error());
if(mysql_query($sql))
echo "Your accuont has been created.";
データベースに正しく追加されているようです。いくつかの文字と数字でハッシュされていることがわかります。
しかし、ログインしようとすると、ログインできません。
login.php の私のコードは次のとおりです。
$sql= "SELECT * FROM members WHERE username='$username' and password='$password'";
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
$username = mysql_real_escape_string($_POST['username']);
$password = $_POST['password'];
$salt = "lollol";
$auth_user = hash('sha256', $salt.$password);
if($password == $salt.$auth_user){
echo "Logged in";
} else {
echo "Not logged in";
}
ログインするときにパスワードを暗号化する必要がありますが、よくわかりません。あなたの何人かが私を助けてくれることを願っています。