何らかの理由で私のチェック用のログインスクリプトがゲストを招待しています。ゲストのログインスクリプトを確認しますか?
私はサイトをまだ生きているわけではありません。
ユーザーがHTMLフォームに入力したユーザー名とパスワードをデータベースでチェックしますが、何らかの理由で結果が得られない場合でもユーザー名はnilに設定されます ユーザー名にユーザー名を追加しますが、結果が得られない場合はユーザー名を何も設定しません。
私はif文を持っていますが、それでも設定しています。
$myusername = mysql_real_escape_string($_POST['myusername']);
$mypassword = mysql_real_escape_string($_POST['mypassword']);
$sql = "SELECT * FROM users WHERE username='$myusername'";
$result = mysql_query($sql) or die(mysql_error());
$battle_get = mysql_fetch_array($result);
if ($battle_get['password'] == $mypassword)
{
$_SESSION['username'] = $myusername ; // store session data
header('Location: http://mydomainname.net/new_rpg/dashboard.php');
} else {
echo "wrong password" ;
}
** 1)**なぜあなたはハッシュとしてパスワードを保存しないでください。? ** 2。)**その後、パスワードをエスケープする必要はありません。 ** 3。)** MySQL側でパスワードを確認してみませんか? ** 4。)**テストのためにキャッシュをクリアしましたか? – ComFreek
はいiveキャッシュをクリアし、急いでいました。私はmd5を作るのが嫌いです。そして、私は逃げても構いません。私はスクリプトを安全にするためにその部分を見つけます。 –
パスワードをハッシュした後は、もうパスワードをエスケープする必要はありません。 16進文字列になります。さらに、他の(より安全な)ハッシュアルゴリズムが利用可能です(['hash()'](http://php.net/manual/function.hash.php)を参照) – ComFreek