前提・実現したいこと
何度か質問させて頂いてますが、大変ありがたく感謝申し上げます。
今回はphp,mysql でログインページを実装する場合について一般的なやり方を教えていただけると幸いです。
Deamweaverを使って書かれたPHPのログインページがあり、コードを修正しているのですが、
MysqlでユーザーIDとパスワードを紹介する方法が私が想像していたものと違っていました。
ログインの際、入力されたユーザーIDでMysqlのユーザーリストから絞り込み、帰ってきたPasswordの結果を入力したPasswordと比べ、一致したらTrue、というやり方が一般的だと思っていました。
SELECT id, password FROM ユーザーテーブル WHERE id=ユーザーID;
今あるコードを読むと、
SELECT id, password FROM ユーザーテーブル WHERE id=ユーザーID AND password=パスワード
となっており、何かしらの返り値があれば(ここではmysqli_num_rowsが使われていました)Trueという判定を
していました。
一般的にどちらが推奨されるやり方でしょうか。両方使えるのであればメリット・デメリットも教えていただけると
大変助かります。
補足情報
ここでは省略いたしますが、エスケープ等は一応されており、私が普段つかう前者のやり方ではパスワードを暗号化して照合しています。
まだ勉強中のため、言い回しや質問の仕方がおかしいかもしれませんがご容赦ください。
宜しくお願い致します。
回答5件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/03/28 10:31