2012-04-14 7 views
1

私はフォームを持っています。これは送信時に新しいURLでページをリフレッシュする必要があります。curl出力から引き出された新しいURLでPHPページをリフレッシュする

しかし、新しいURLは、カール関数の出力から来る必要があります。

現在のところ、私はカール機能を正しく動作させることができますが、そのURLでページをリフレッシュするのではなく、ページにURLを印刷するだけです。

あなたはどのように私はそのページを更新するためにそのURLを使用することができますか?事前に

おかげ

EDIT:あなたは上記のリンクを訪問した場合

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, "http://uk.ImpulsePay.com/payforit?RouteID=5432&URL=Y"); 
curl_setopt($ch, CURLOPT_HEADER, 0); 


header("Location: curl_exec($ch)"); 
curl_close($ch); 

- それは、体内のリンクを持つページが表示されます。私は積極的にページの本文にリンクを取得しようとしているし、ページをそのページに更新します。

それは意味がありますか?

+0

はで「戻り値」を参照してください。私たちがあなたがしようとしていることのより良いアイデアを得るためにコードを投稿してください。 – Cfreak

+0

こんにちは、私はカールを使用する必要があります。なぜなら、基本的に私がカールするために提出するURLは新しいURLを吐き出し、それはページをリフレッシュする必要があるURLです。それは決済処理のものなので、何らかの理由であなたがそれを求めていると思います。 – user1332723

答えて

2

あなたはこのページを参照して、PHPのヘッダ()メソッドを使用することをお勧めします:http://php.net/manual/en/function.header.php

は、ここで彼らの例です:

:読み込みラインの

header("Location: http://www.example.com/"); /* Redirect browser */ 

テイクノート

実際の出力が送信される前にheader()を呼び出さなければならないことに注意してください。

一部のコンテンツは、すでにあなたが始めるために、このページを参照して、出力バッファリングを使用する必要があります、「印刷」された後、あなたは、ヘッダーを変更する必要がある場合:http://php.net/manual/en/function.ob-start.php

UPDATE: あなたcurl_exec($ CHが)ではありません二重引用符で囲んだ機能を実行できないため、変数を挿入するだけで実行できます。ここで

は、あなたが何をしたいです:

$httpResponse = curl_exec($ch); 
header("Location: $httpResponse"); 

応答はちょうどURLで、これはあなたのカールのリクエストによって返された値に、ユーザーのブラウザをリダイレクトすると仮定すると。

更新日: 返品転送設定がないことを忘れました。 あなたのCURLOPT_HEADER行の後に次の行を追加する必要があります。

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

これはブール成功指示の代わりに応答を返すようにcurl_exec教えてくれます。私は私が正しい理解すれば、あなたがすべてでカール必要はないと思うhttp://php.net/manual/en/function.curl-exec.php

+0

私はPHPヘッダメソッドの前にコードを置くことができますか?出力する必要があるものだけではありませんか?ありがとう – user1332723

+0

はい、できます限り、PHPのオープニング** <?php **の前には何もありませんし、あなたのコード行は何もエコー/プリントしません。それ以外の場合は、前述のように出力バッファリングを使用する必要があります。 –

+0

大丈夫です...そして、私はカール関数の出力を取って、ヘッダをリフレッシュするURLとしてそれを使うことができる方法はありますか? – user1332723

関連する問題