phpでユーザが自分の電子メールアドレスとパスワードを入力するクエリを作成し、データベースから一致した電子メールとパスワードがあればデータベースから行を取得する必要があります。どうやってやるの?ユーザー名またはパスワードのいずれかが間違っている場合は、それに従ってメッセージを印刷する必要があります。電子メールのパスワード条件を使用してデータベースからレコードを取得するにはどうすればよいですか?
答えて
私は擬似コードで次のように行くだろう:
authentication()
機能は、アクセス権を付与するためのパスワードを電子メールで比較
if(authentication(email, password)) {
phpQuery();
} else {
alert();
}
。
パスワードはデータベースにプレーンテキストとして保存しないでください。パスワードのハッシュをお読みください。
最も簡単な例:
function passwordHash($username, $password){
$hash = $password;
for($i = 0; $i < 10000; $i++){
$hash = md5($hash . $username); // we use username as salt
}
return $hash;
}
$username = mysqli_real_escape_string($_POST['username']);
$hash = passwordHash($username, $_POST['password']);
$sql = "SELECT * FROM `users` WHERE username='$username' and password='$hash'";
$query = mysqli_query($sql);
if(mysqli_num_rows($query) != 0){
// successfull login
}else{
// login failed
}
もちろん、あなたが同じハッシュ関数を使用してフォームをサインアップするべきです。また、私はmysql接続を初期化しませんでした。
あなたはMD5を使用しないでください。http://security.stackexchange.com/questions/19906/is-md5-considered-insecure PHPは仕事をする独自の機能を持っています – Ivan
準備文を使用してください! SQLインジェクションについて読む:http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php – Ivan
みんな、私は最も簡単な解決策を書いた。 md5の繰り返しを10000回使用し、mysqli_real_escape_stringを使用したことに注意してください。 – Reptile
- 1. 電子メールクライアントを使用して電子メールを送信するにはどうすればよいですか?
- 2. DBから電子メールの設定を取得するにはどうすればよいですか?
- 3. Google APIを使用してGmailからGmailの電子メールの件名を取得するにはどうすればいいですか?
- 4. 電子メールとパスワードを格納するデータベースとしてmysqlを使用してピラミッドのログインシステムを設定するにはどうすればよいですか?
- 5. 電子メールから添付ファイルを取得し、サイズを変更し、電子メールに返信するにはどうすればよいですか?
- 6. 電子メールテンプレートで条件文を使用するにはどうすればよいですか?
- 7. Pythonを使用して電子メールメッセージのテキストコンテンツを取得するにはどうすればよいですか?
- 8. 電子メールからフォームをデータベースに送信するにはどうすればよいですか?
- 9. マルチスレッドを使用してGmailサーバーからメールを取得するにはどうすればよいですか?
- 10. データベースから取得した電子メールアドレスに電子メールを送信する
- 11. 電子メールとパスワードを使用してログイン中にデータベースにログイン履歴を作成するにはどうすればよいですか?
- 12. Redmineで現在のユーザーの電子メールを取得するにはどうすればよいですか?
- 13. Microsoftパーソナルアカウントのプロフィール写真を電子メールで取得するにはどうすればよいですか?
- 14. 最後の1時間からMicrosoft Graphを使用して電子メールを取得するにはどうすればよいですか?
- 15. 条件を使用してデータセットからレコードを取得
- 16. FirebaseでDisplayNameに電子メール+パスワード認証を追加するにはどうすればよいですか? Android
- 17. ajaxを使用してデータベースからデータを取得するにはどうすればよいですか?
- 18. データベースを使用してフォルダから画像を取得するにはどうすればよいですか?
- 19. 電子の新しいBrowserWindow()からウィンドウオブジェクトを取得するにはどうすればよいですか?
- 20. どのように電子メールを解析し、メールJavaMailからハイパーリンクを取得するのですか?
- 21. (html)形式で電子メールを収集し、(PHP)を使用して外部電子メールに送信するにはどうすればよいですか?
- 22. データベースから取得した電子メールアドレスに電子メールを送信できないのはなぜですか?
- 23. Facebook Graph API v2.8経由で電子メールを取得するにはどうすればよいですか?
- 24. 電子メールを公開するにはどうすればよいですか?
- 25. 反応の火災基地からのUIDを使用して電子メールを取得するにはどうすればいいですか?
- 26. C#を使用して電子メールを取得しますか?
- 27. 電子メールの件名に基づいて電子メールを転送するにはどうすればよいですか?
- 28. Poweshellを使用して電子メールからsamaccountnameを取得する方法は?
- 29. 電子メールテンプレートに顧客の電子メールを表示するにはどうすればよいですか?
- 30. Javaを使用してシステムのパスワードを取得するにはどうすればよいですか?
投稿が広すぎるため、投稿を閉じる必要があります。 – Ivan