質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
iframe

HTMLのタグ<iframe>です。<iframe>は、ドキュメント内に""inline frame""を作るHTML要素で、同じページでセパレートしているドキュメントが表示されるようにします。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

セッション

Sessionはクライアントがサーバに送ったすべてのリクエストのことを指します。

ログイン

ログインは、ユーザーがコンピューターシステムにアクセスするプロセスの事を呼びます。

Q&A

解決済

1回答

10244閲覧

PHPにて iframe内を使った場合のログイン情報の保持について

uonitarou

総合スコア20

iframe

HTMLのタグ<iframe>です。<iframe>は、ドキュメント内に""inline frame""を作るHTML要素で、同じページでセパレートしているドキュメントが表示されるようにします。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

セッション

Sessionはクライアントがサーバに送ったすべてのリクエストのことを指します。

ログイン

ログインは、ユーザーがコンピューターシステムにアクセスするプロセスの事を呼びます。

0グッド

0クリップ

投稿2017/01/07 10:47

使用言語 [php]
やりたいこと[iframeタグを使ったログイン機能]

質問内容

index.htmlにて iframeタグを使用して 簡易的なログインページを埋め込み作成しました。

実際にそこで id PWを入れると ようこそ???様とでるようになりましたが、セッションスタートを行ってるにもかかわらず、ページを更新した際に自動でiframeタグ内がログイン画面に戻ってしまい、ログイン状態を保持することができません。

調べても同じような現象が見られなかったため質問させていただきました。

ちなみに ログインページを直接iframe内でなく開いた場合はログイン後ログイン状態が保持されているためiframe内に入れた場合に起こる問題だと考えております。

情報が足りない場合はご教授くださいませ。

お知恵をお貸しくださいませ。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ページを更新した際に自動でiframeタグ内がログイン画面に戻ってしまい、ログイン状態を保持することができません。

「ログイン状態を保持することができません」はどのように判断されたのでしょうか?
「ログイン状態が保持されている」ならば「ログイン画面が表示されない」というのはアプリケーションがそのように作られている場合です。たしかに、一般的にはそのように作られているサイトが多いですが、質問者様がそのように作っていないのであれば、そのようにはなりません。 iframe の src 属性で指定されているURLがログイン画面のものであれば、「リロードすると、ログイン画面が表示される」のはあたりまえです。

一般的には、どのようにするかというと、

  1. iframe の src 属性にはトップ画面のURLを指定する
  2. アプリケーションのすべてのURL(トップ画面のURLを含む)において、未ログイン状態であれば、ログイン画面に遷移(リダイレクト)するようにアプリケーションサーバを設定する
  3. ログイン画面でログインに成功すると、もともとアクセスしようとしていたURLにアクセス(リダイレクト)する

というように組み込みます。このようなロジックを組み込んでいないのであれば、 iframe の src 属性でログイン画面を指定しているのですから、リロードすればログイン画面が表示されて当たり前だと思います。

投稿2017/01/07 11:31

mit0223

総合スコア3401

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

uonitarou

2017/01/07 12:04

iframeのsrcはたしかにログイン画面を指定しております。納得がいきました。 ということは、ログイン状態には、ログイン画面は自動的にログイン後画面に飛ばすようにすればよろしかったでしょうか?
mit0223

2017/01/07 12:14

はい、そうですね。そのように実装されているサイトも多いと思います。
uonitarou

2017/01/07 12:31

ありがとうございます。もし可能であればあと1つ疑問があるので回答いただければと思うのですが、 その場合は、セッションではなくCookieでないと判断し別ページに飛ばすことはできませんか?
mit0223

2017/01/07 12:43

すみません。phpに詳しくないのですが、セッションはcookieで管理されているので、セッションの有無で判定して良いと思います。
uonitarou

2017/01/07 12:56

ありがとうございます。無事解決しました。 ご指摘いただけなければずっと気づかなかったと思います。本当にありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問