• ベストアンサー

【PHP + MySQL】ログインの

ただいまPHP + MySQLにて、会員ログインシステムを導入した会員サイトを運営しておりますが、ログイン時にまったく別のユーザーでログインしてしまうという現象がおきて困っております。 たとえば、Aというユーザーが自分のIDとパスワードを使ってログインすると、ごく稀にBというユーザーでログインされてしまうということです。何かの間違いかと思い、会員データの編集画面を表示してもBの会員情報が表示されてしまい、ログアウトするまで、Bというユーザーでログインされているという状況です。 ID、パスワードの重複かと思いそちらもしらべましたが、 AはID、パスワードともに数字のみ BはIDが英数字 パスワードが数字 になっており、重複や入力ミスではないようです。 ちなみにWORDPRESSを用いてサイト構築を行っています。 ログインの処理自体はWordpressnのプラグインなどは用いていません。 一度キャッシュを制御するプラグインを用いて、ログインした状態のページをキャッシュしてしまう事はありましたが、そちらは今回とは関係ないのではないかと思っております。 また、現在そのプラグインは使用しておりません。 ログイン処理などを何度も見直しましたが、 間違ってログインされるような事は起こりえないと思うのですが、 何かサーバーの問題などでこのような事は起こるのでしょうか? 大変困っておりまして、お答えいただけるととてもありがたいです

  • PHP
  • 回答数2
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.2

おそらく、ログイン処理部ではなく、セッション処理部の問題でしょう。 質問者さんがどのように作られているのかはわかりませんので、ある程度想像になりますが、 おそらく、 ・最初に、ユーザーIDとパスワードを入れて認証 ・セッション管理で、ユーザー認証成功したらその情報を入れる ・セッション情報に「認証成功」という情報が入っていたら、認証済として、その会員のデータを表示する といった仕組みになっているかと思います。 ここで、もし、異なるユーザーが同じセッションを共有してしまっていたら、 セッション情報が他人のユーザーIDで認証済ということになってますから、「別のユーザーの情報が見れる」ということになってしまいます。 あとは、セッション管理をどうやっているのかによって話は変わってきます。 PHPのセッション管理関数を使ってるなら、まず重複することはありませんが、 独自の方法でセッション管理しているのなら、その部分で動作が一番あやしいかと思います。

その他の回答 (1)

noname#227352
noname#227352
回答No.1

私も以前同じような現象に陥りました。 私の場合、同一PCから異なるIDとパスワードを使ってログインした場合のみに、そのような現象が確認されました。 そこで私的には、『ログアウト時のセッション情報の完全削除』『ログアウト後、一度リダイレクト』等の処理を挟むことで改善出来ました。 ご参考までに…。

関連するQ&A

  • javascript を用いたログイン処理

    ログイン画面(1)でログインIDとパスワードを入力し、ログインボタンを押下します。 システムAにてログイン認証処理を行います。 ログイン後の画面はTOP画面(1)を表示します。 特定のユーザのみ、システムBにログイン認証処理を受渡し、 ログイン後の画面、TOP画面(2)を表示します。 (システムBでのログイン承認処理には、通常ログイン画面(2)からID、PWを入力しますが、 ログイン画面(1)にてID、PWを入力した場合、ログイン画面(2)は表示しません) 言葉だけで申し訳ありません。 上記のようなログイン処理システムをJavaScriptを使用して作成したいのですが、 何か参考になるサイトなど教えていただけないでしょうか。宜しくお願いします。

  • ログインの際のコード入力

    こんにちは。 カテが違うかも知れませんが、 会員登録しているサイトなどにログインする時に良く見かけるログインIDやパスワードの他に入力する数字で、いびつな数字が表示されていて、それを読み取って入力するものがありますが、 これのことを何と呼ぶのでしょうか?また、なぜこれがセキュリティの強化になるのでしょうか?この辺を簡単に解説したサイトなどがあれば、ご紹介いただけると幸いです。 よろしくお願いいたします。

  • CGI/PHP ログインフォームについて

    Yahoo!やこちらのgooサイトで利用されているようなログインサイトを製作しようと思っているのですが実際ネット上のフリーCGIなどから製作すると大変質素なものになってしまいます… ■ 希望 ・BASIC認証ではないタイプ ・ログイン後に現在ログインしているIDなどが表示される ・登録時にID・パスワードを自分で決めれる(Yahooの新規会員登録のように…) ・登録後パスワードの変更ができる もちろん希望に当てはまらないものがあっても結構です。 最後に質問とは別に… ほとんどのサイトのログインページは大変きれいなホームページの中にログインボタンなどが作られていますがホームページビルダーなどを使ってCGIなどを埋め込む(?)ことができるのでしょうか? 不足あれば補足していきたいと思うのでぜひ皆さんの知識をお借できれば嬉しいです><

    • ベストアンサー
    • CGI
  • ログインが出来ない

    会員ID、パスワードを正しく入力しても、正しくありませんと表示され、ログインが出来ません。

  • ログインについて

    ヤフーログインするときにIDもパスワードも間違ってはいないのですが、パスワードが正しくありませんという表示がでます。何回か入れているうちに、認証画面が出てきて、IDとパスワードと認証画面の数字を入れるとログインできます。なぜ一回でログインできないのでしょうか。また、outlookメールもログインしてからでないと送受信ができません。前はこんなんじゃなかったんですが

  • ログインしたら他からログインできないようにしたい

    PHP+MySQLで会員サイトを作っています。 1. 誰か一人がログインしていたら、そのログイン会員と同じIDとパスワードでログインしようとするとログインできないようにするか、元のログインしていた人が強制的にログアウトするようにしたい。 2. 一人のユーザーが複数アカウントを作って会員サイトを使いたい放題にするのを阻止したい。 そのため、「PC1台からは必ず1ユーザーのみしかログインできないようにしたい」です。 (複数PCを使われたら仕方ないかもしれません・・・) よく銀行サイトのようにログイン中に他のブラウザや端末からログインしようとすると「すでにログイン中です。ログインし直しますか?」のようになりますが、1.はこんな感じを考えています。 仕組みとしてはどのようにするのが良いのでしょうか? 1. ログイン時にセッションIDを作り、データベースにそのセッションIDとIPアドレスを記憶しておいて、Web上で何か操作するたびにブラウザ側のセッションIDとデータベース側のセッションIDを比べて同じなら操作を実行し、違うなら操作できないようにする。 2. ログイン中に別のブラウザからログインしようとすると、データベース側に保存されているセッションIDが違うのでログインできないようにする。 3. 同じIPアドレスですでにログイン中の場合、同じPCからは他のアカウントでログインできないようにする。 こんな感じでしょうか? 何か問題点やそもそもこの仕組は間違っていて常套手段があるなどありましたらお教えください。 なんとなく、IPアドレスのチェックはWiMAXなどは時間とともに変わったりするのであまり良くはないかもしれません。 どうぞよろしくお願い致します。

    • ベストアンサー
    • PHP
  • ログインできない

    乱文失礼します。 グルメサイト(ぐるなび)の店舗用管理ページへのアクセスにおいて、パソコンAではIDとパスワードを認識してくれて、管理画面に入ることができます。 しかし、パソコンBでは、管理画面に入ることができません。 ID、パスワードを確認して云々という表示が出てしまいます。 ID、パスワード共に、打ち間違いはありません。(何度も確認済み) パソコンBの設定に問題があると思うのですが、問題点がわかりません。 ちなみに、別の二つのグルメサイト(ホットペッパー、グルメぴあ)管理画面には、どちらのパソコンでもログインできます。 パソコンA、B共に、WinXP、SP3ノートブック 「ぐ」にはパソコンAでIEのみでログインでき、パソコンBではブラウザにかかわらずログインできません。 「ホ、ぴ」には、パソコンA、B共に、Google Chrome、IE、Mozilla Firefoxいずれでもログインできます。 原因と対策をご教示いただけますようお願いいたします。

  • ログインできません・・・

    いつもお世話になっています。 ログインIDとパスワードが必要な会員向けの HPで、ログインできずに困っています。 いつもは、ログインするページでIDを入れる所に 既にIDが入っていて、パスワードだけを 入力していました。 ですが今日になってIDが消えていて、疑問に思い ながらもIDから入力しましたが、どうやらIDが 間違っているようで、ログインできません。 いつもは自分で入れてなかったけれど、IDは記憶して いましたし、間違っているとは思えません。 IDを教えてもらうことは不可能なようです。 以前のように、IDを表示させることは できないのでしょうか?

  • ログインができません

    TSUTAYA DISCASにパソコンからもスマホからもアプリからもログインができません。 Tサイト[Tポイント/Tカード]のログイン画面が表示されてメールアドレスとパスワードを入力しログイン、TSUTAYADISCAS会員の方はこちら をクリックしメールアドレスとパスワードを入力すると 入力されたメールアドレスは、すでにT-IDと連携済みです。 下記「T-IDでログイン」ボタンより同じメールアドレスでログインしてください。が表示されてログインができません。 Q&Aで検索するとヤフーやツタヤのサイトからログアウトするように記載されていたがログアウトしても同じ状況でした。 Tサイトのメールアドレスを変更しDISCASのメールアドレスと違うアドレスになってしまい、そこからログインができなくなった様な気がします。Tサイトのメールアドレスを元に戻す事も、登録済みですと表示されてできません。どうすればログインができるようになるのでしょか?どなたかご教示願います。 ※OKWAVEより補足:「TSUTAYA DISCAS」または「TSUTAYA TV」についての質問です。

  • OKWaveログインについて

    ・パスワードは分かるが会員IDが分からない ログイン時には「会員IDとパスワード」の組み合わせの他に 「登録メールアドレスとパスワード」によるログインが可能です。 会員IDがご不明な場合は「登録メールアドレスとパスワード」にて ログインをお試しください。 FQA<よくある質問>に書いてあったのですが、 どのようにして、ログインするのでしょうか?

専門家に質問してみよう