![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?a65a0e2)
はじめまして、お世話になります。
現在PHPで制作を行っています。
早速質問したいのですが
例えば
ページ1(サーバーA)「idとpassword入力画面」
ページ2(サーバーB)「ここにあるid&passwordで認証しokならページ3に進む」
ページ3(サーバーA)「ログイン成功画面」
この状況において
ページ3の生のURLを直接打ち込んだでは閲覧できないようにして、ページ2経由でのみページ3を閲覧できるようにするにはどのようにすればよいでしょうか?
条件は
ページ1で入力したidの値をページ3まで渡すということです。
セッションやクッキーはだめでした。
現在、ページ3ではURLが
http://サーバーA/3.php?id=○○○○となっているため
○○○○の部分を変えれば他のidでログインできてしまいます。
$_GET['id']で一応、値は取れています。
初心者でどうすればいいのかさっぱりです。
どなたか教えていただけませんか?
No.4ベストアンサー
- 回答日時:
サーバBに認証用の隠しページ(のようなもの)を作ってはどうでしょうか。
フォーム入力->内部でサーバBに問い合わせ→ログイン成功
$result = file_get_contents('http://serverB/api_auth.php?id=a&pass=b');
あとはログイン済みの情報をクッキーなりセッションで保持して。
セキュリティが不安ならPOSTに変えたり、idとpassを暗号化して送るとか。
No.3
- 回答日時:
ページ1,2で使っているフォーム部分をGETからPOSTに変更すればURLにIDは表示されなくなります。
合わせて$_GETも$_POSTに変えましょう。
No.1
- 回答日時:
がると申します。
おっしゃっている内容は、普通「セッションで」実現可能かと思います。
まぁ確かに、PHPのセッション関数群は基本的に穴が多いのでセキュアにするのは大変なのですが。
そのレベルの精度を出そうとするのであれば、失礼ながら「初心者で」というレベルの方に教えるには相応の労力がかかってしまいます。
ですので、まずは一般的な「セッション関数群」か、或いはPEARのPEAR::Authあたりの使い方をきちんと学ばれる事をお勧めいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP php my adminより取り出したデータ表示 2 2022/06/15 11:56
- HTML・CSS htmlで画面遷移させたい 1 2022/10/28 18:19
- MySQL 「掲示板のログイン画面」はPHP~MySQLに「データベース認証のシステム」方式です。 1 2022/09/27 05:00
- Excel(エクセル) Excel 在庫管理について 3 2023/02/09 10:00
- PHP php 入力画面から確認表示画面へ情報の受け渡しについて。 1 2023/06/07 18:00
- その他(ブラウザ) Edge、Chrome、FireFoxのパスワード記憶機能 2 2023/08/16 16:25
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- PHP PHPで入力フォームでデータを確認表示画面まで送る流れを日本語で理解したいのです。 1 2023/05/29 19:12
- Wi-Fi・無線LAN ルーター設定画面のログアウト方法がわからない 3 2023/04/08 13:40
- PHP PHP MySql ページング 2 2022/09/20 06:38
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
URLのパラメータをGETのままで...
-
セッション変数にパスワードを...
-
PHP SESSION変数を複数使用でき...
-
クッキーを使わないセッション...
-
■(ログイン)セッションの有効期...
-
特定のページからのみのアクセス
-
【C#】DataGridViewの最大列数...
-
Dosブロンプトでtabを出力したい
-
VBA コレクションに2次元配列...
-
shシェルスクリプト 空白行の...
-
wordの差し込み印刷で文字...
-
「取得先」という表現について
-
バッチファイルでpingの結果を...
-
pdftkを使った処理をバッチファ...
-
format関数について
-
IPアドレスとMACアドレスを取得...
-
バッチファイルでPCのモデル名...
-
ASP.NET GridView の検索画面で...
-
VBで他アプリの「syslistview32...
-
Yahoo! JAPAN IDを新規取得でき...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
URLのパラメータをGETのままで...
-
ログイン画面をはさんだ後、自...
-
Sessionの上限について
-
複数のサーバで運営する場合の...
-
セッション ID とセッション名...
-
セッション変数にパスワードを...
-
POSTで情報を他のサーバーに渡...
-
セッションのスコープ(有効範...
-
別ブラウザ間でセッションの値...
-
セッション変数の命名規則
-
ブラウザを閉じた後もセッショ...
-
PHP cookieの値が更新されない...
-
PHPでログイン人数を制限したい
-
セッションの破棄
-
【PHP】SESSION変数の競合を...
-
PHP SESSION変数を複数使用でき...
-
セッションのタイムアウト管理
-
session_start()で生成されるセ...
-
負荷分散におけるセッションID...
-
完全なセッション破棄をしたい
おすすめ情報