- ベストアンサー
ログイン画面
ログイン画面を作っています。 メールアドレスとパスワードを新規登録時に入力してもらい、それを使ってログインするものです。 ログイン画面で、メールアドレスなどを間違えた時、「間違ってますよ」と警告を出したいのですが、どうすれば良いでしょうか? 質問が、わかりづらくてすいません。 入力した値と、データベースの値が比較できたら、良いんでしょうけど、どうすれば良いかわかりません。 知恵をかしてくださーい。 おねがいします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ドコで躓いているのかイマイチはっきりしないのですが、 ・入力されたIDをデータベースより探す→なければエラー ↓ ・データベースよりそのIDのパスワードを取り出し、入力されたパスワードと比較→違っていたらエラー ↓ ・ログイン成功 が普通の流れでは無いでしょうか? なお、「IDが違います」「パスワードが違います」と表示するのではなく、(多少不親切ですが)「IDまたはパスワードが違います」としたほうがセキュリティが若干向上しますよ。
その他の回答 (3)
- widoww
- ベストアンサー率20% (33/159)
そうです、2つ以上いれられます こんな感じに where (id='$id') and (pass='$pass') limit 1 パスワードをハッシュ化してる場合は 取得したパスをハッシュ化したものを代入すればいいです。
お礼
無事に解決できました。 まことにありがとうございます。
- widoww
- ベストアンサー率20% (33/159)
データベース内で、SELECT文で取得したID&パスで 一致する検索かけて空じゃないならログインさせて 空ならログイン不成功でメッセージを出すのでよいのでは?
お礼
返信ありがとうございます。 一致する検索というのはWHEREの後の条件を入れるということですか? あれは複数個入力できるのでしょうか?
- fake-tang
- ベストアンサー率24% (186/772)
よくある、 登録ページで仮登録 ↓ 登録ページに入力されたアドレスに本登録用URLを送る ↓ 本登録用ページにアクセスでメールアドレスが間違っていないことを確認 とか。
お礼
すばやい返答まことにありがとうございます。 メールにURLをおくるのではなく、Yahoo!メールのようにIDとパスワードでログインするのですが、IDかパスワードのどちらかが間違っていれば警告を出すようにしたいのです。
お礼
回答していただき、まことにありがとうございます。 入力されたIDをデータベースより探す→なければエラーというところがいきなり分からず躓いています。 >なお、「IDが違います」「パスワードが違います」と表示するのではなく、(多少不親切ですが)「IDまたはパスワードが違います」としたほうがセキュリティが若干向上しますよ。 勉強になります。ありがとうございます。