cURL関数を使用したphpからのpost送信と画面遷移
とある事情で、どうしてもphpからpost送信をしなければならず、
且つ指定したURL先に画面遷移してほしいと考えております。
現状はpost送信自体は成功しているのですが、指定したURL先への画面遷移方法がわかりません。
無理にこの関数を使用した方法で実装をしたいわけではありませんが、
フォームのサブミットを押してpost送信をする処理と、同等の事をphpからpost送信、画面遷移が出来る方法があるのでしょうか?
ご教授よろしくお願い致します。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
>> post送信自体は成功しているのですが、指定したURL先への画面遷移方法がわかりません。
これは、例えばログイン時のIDやパスワードをPOST送信すると
サーバーからリダイレクトのレスポンスが返ってくるが
そのリダイレクト先のページが取得できないということでしょうか?
この場合、処理自体は難しくは有りませんがサイト毎に必要な処理が異なるので
それぞれに合わせて組む必要が有ります。有名サイトほど面倒です
必要な処理の例を示します。
1.POST後のレスポンスヘッダーを解析し
Redirectの指示が有ればそのURLのページを取得しなおす。
レスポンスコードが 301~303の場合が該当します。
多くの場合は、-L オプションでも対応できます
他に、metaタグでリダイレクト先が指定されている場合は、本文まで読み込んで
そこのページを取得しなおします。
少々面倒などが、javascriptでリダイレクト先が組み込まれている場合です
その場合は、スクリプトを解析して 取得するページを取り出します。
2.多くの場合 POST後、Cookieeが送付されてきますので
Redirect先にCookieeの送信も忘れずに処理します。Cookieeにサイト側の
セッションコードが組み込まれている場合が多いので、これを忘れると
サーバー側が正しいリダイレクト先を判断できないため所望のページに
移動できません。
3.POSTする際、UserAgentをデフォルトのままではなく、Mozilla/4.0 や
compatible; MSIE 6.0などの文字を組み込んでやる。(BOT対策やブラウザ毎に
表示を切り替えているサイトもあるため)
そうしないと正しくリダイレクト先を教えてくれない場合が有ります。
4.さらに凝ったサイト(某有名なSNSなど)では、javascriptを解析して
POSTする情報を付加する必要があります。Javascriptでhidden属性のコード
をForm内に書き込んでサーバーに送信させてセッションを維持しているものも
有ります。この場合は、POST時にjavascriptで書き加えられたhidden属性の
値も一緒にPOSTしてやる必要があります。
5.POSTデータをjavascriptで別のコードにエンコードしてから送信させている
サイトも有りますので、その場合はそのエンコードルールに従う必要があります
サイトによってどこまでPHP側で処理しなければならないかは変わりますので、
以上のことを参考にしてご自分で作りこむしか有りません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP $_SESSIONに渡した後はそのまま使っても問題ありませんか? 3 2022/11/08 22:17
- HTML・CSS htmlで画面遷移させたい 1 2022/10/28 18:19
- PHP PHPで入力フォームでデータを確認表示画面まで送る流れを日本語で理解したいのです。 1 2023/05/29 19:12
- その他(メールソフト・メールサービス) Windows10付属のメール、なぜ設定が劇的に簡単になったのか? 1 2022/12/16 13:14
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP php 確認表示画面で値をSESSIONから取り出す理由の解釈は正しいでしょうか? 1 2023/06/09 17:39
- iPhone(アイフォーン) iPhone13 Pro Maxが異常に遅い理由? 3 2022/09/17 20:30
- PHP ファイルの遷移がうまく行われているのかわからない 1 2022/12/21 20:02
- PHP php 入力画面から確認表示画面へ情報の受け渡しについて。 1 2023/06/07 18:00
- Windows 10 パソコンが使えず困ってます!(Microsoftアカウントでログイン後、PINコードに関するエラー) 2 2023/03/17 19:09
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フォームを使わずにPOST送信す...
-
IFRAME内PHPのセッション変数取...
-
ログイン画面から入って、「戻...
-
動的にhtmlテーブルを表示
-
リストボックスにテキスト入力...
-
HTMLエスケープすべき場所につ...
-
PHPで返信メールにチェックボッ...
-
phpでの値を受け渡し方法につい...
-
php 入力画面から確認表示画面...
-
DMMの動画を全件取得したのです...
-
Yahoo! JAPAN IDを新規取得でき...
-
Dosブロンプトでtabを出力したい
-
アクセスの度にIPアドレスを変...
-
【C#】DataGridViewの最大列数...
-
ローカルのコンピュータ名を取...
-
【C#】FindWindowExの使い方を...
-
先日NISAの投資信託で、初めて...
-
初歩的な質問だと思います。IF...
-
Parse error というエラーの対...
-
バッチファイルで、全てのウィ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
php 入力画面から確認表示画面...
-
ログイン画面から入って、「戻...
-
php history.back()の戻るボタ...
-
POSTで受け渡したものを保存し...
-
フォームを使わずにPOST送信す...
-
VBAで重複チェックの仕方を教え...
-
PHPで値を保持する方法
-
ブラウザバックしてもチェック...
-
IFRAME内PHPのセッション変数取...
-
【Java】投稿完了画面リロード...
-
HTMLエスケープ処理とデーター...
-
cURL関数を使用したphpからのpo...
-
asp.netでのセッションを使用し...
-
「ページネーション」で検索キ...
-
php に関して質問です。 各ユー...
-
閉じるボタン「×」を制御したい
-
PHPで名寄せするには?
-
セッションを使用したページ遷移
-
HTMLエスケープすべき場所につ...
-
GETのメリットについて
おすすめ情報