私の失敗したコードです。私は文法に慣れているので、それが問題かもしれないと推測しています。暗号は私が理解するのにはしばらく時間がかかりましたが、基本的に一見ランダムな塩が生成され、「暗号化された」パスワードに格納されます。だからあなたがそれに対してテストしたいときは、保存されたパスワードから塩を取り出す必要があります。したがって、sign_inコードは長くなります。crypt()を正しく動作させるにはどうすればよいですか?
sig_in
$query = "SELECT pass FROM cr WHERE email='$email'";
$row = mysql_fetch_row(database::query($query));
$pass = crypt($pass, $row[0]);
$query = "SELECT email,pass FROM cr WHERE email='$email' AND pass='$pass'";
if (mysql_num_rows(database::query($query)) == 0)
{
「$塩」が何をしているのか、それを使って塩を使って計算された一致する値を確認する方法を理解できません。 –
私は今です。塩は無作為に遺伝子導入されている。したがって、私は同じパスワードの異なる保存パスワードハッシュを取得します。異なっているということ以外にも、長さが違っていて、それは私のコードを壊していたものでした。 mysqlテーブルにはさらに多くのスペースが必要でした。それは今働く。 –