2011-06-20 9 views
1

私は外部の.phpサービスからデータを非同期に提出/取得するiframe submissionを使用するWebアプリケーションを構築しています。大量のデータを取得する必要があるという私のプロジェクトに新たな制約があります。通常は、外部の.phpサービスにURLにクエリ文字列として追加されたデータをローカルページにリダイレクトさせるだけですが、5,000文字以上のチャンクがある可能性があるため、これは安全だとは思わないデータ(1回のリクエストで3つの "チャンク"を取り上げているかもしれません)。PHPでPOST変数を宣言する

私の質問には、私の.phpサービスでPOST変数を宣言する方法はありますか?さらに、POST変数を宣言すると、ヘッダー( 'Location:someLocation.php')経由でリダイレクトされるページに実際に移動します。 (私はそれができないことを疑っている)。

これが最善の方法ではなく、.phpファイルから、宣言されたPOST変数を使用して外部の場所にリダイレクトする方が良い場合は、教えてください。

***以前は、JavaScriptを使ってiframeページにフォームを追加し、必要なものをテキストフィールドに入力し、フォームを外部ページにポイントしてから送信しました。これは、.phpがサービスとして実行されているため実行可能な選択肢ではないため、ブラウザ内でページがレンダリングされないため、その中に配置されているjavascriptは実行されません。

お礼、

答えて

3

セッション変数を利用してください。
This should get you started


による以下のコメントへの更新:あなたはPHP内のポスト変数を "宣言" していない投稿に

+0

2つの.phpファイルが異なるホスト上に存在するため、セッション変数が機能しません。私が言ったように、私は外部の場所にリダイレクトしようとしています。しかし、応答ありがとう。 – MoarCodePlz

+1

@MoarCodePlz - 'cURL'を使って投稿を送ることができます – Neal

+0

はい、Neal、cURLは私が必要とするものです。ありがとうございました。 – MoarCodePlz

0

を送信するためにcURLを使用して試みることができる

。 POSTを介してデータを送信し、$ _POSTから取得するだけです。

あなたはデュアル方法あなたのサービスにしたい場合は、GETとPOST行うことができますので、あなたが行うことができます。また

switch ($_SERVER['REQUEST_METHOD']) { 
    case 'POST': 
     $myvar = $_POST['myvar']; 
     break; 
    case 'GET': 
     $myvar = $_GET['myvar']; 
     break; 
    default: 
     die("Unsupport request method"); 
} 

、あなたは同時にGETとPOSTの組み合わせである、代わりに$_REQUEST['myvar']を使用することができ、 _REQUESTで正しく設定されていることを期待するのではなく、特定のスーパーグローバルを使用することをお勧めします。

+0

私はポインタを感謝しますが、私はもともと私が求めていたものであまりにも漠然としているかもしれないと思います。私はPHPを介してhttpリクエストをカスタマイズして送信する方法を探しています。 Nealは、cURL PHP拡張モジュールへの言及を引用して、上記で正しく答えました。あなたのご意見ありがとうございます。 – MoarCodePlz