2011-10-25 15 views
0

名前、住所、電子メールなどのユーザーデータを持つフォームがあります。私は操作できない外部ドメインのページに対してアクションを実行したいと思います。通常、私はフォームがaction="www.notmydomain.com/externalscript.php"でPOSTを介してデータを送信する必要があると言いますが、今はまずこのデータを保存してから、このターゲットにフォームデータを送信します。この場合は可能ではないので、私のフォームデータをMYサーバの別のスクリプトに送信しようとしましたが、データを保存してからPOSTvarsを再利用し、カールで送信します。これまでのところ動作しますが、ユーザーがこのドメインで終了するように、www.notmydomain.com/theforeignscript.phpにリダイレクトする必要があります。カールは要求をすることしかできないので、それはしませんよね?PHP:フォームを送信して同時にデータを保存する

最初のページには、フォームを示しています

CSVにデータを保存するためにmyscript.phpで使用された後、再びwww.notmydomain.com/externalscriptにデータを提出しなければならない..which
<form id="newsletter" action="myscript.php" method="post">....</form> 

。 PHPは(編集することはできません)...

これはどのように行うことができますか?

ありがとうございます。

+0

フォームを送信する前に 'ajax'を送信できます(ajaxが完了した時点で送信してください)。隠しフィールドを持つPHPコードでフォームを印刷し、 'body'タグに' onload = "theform.submit()" 'を追加して、データを保存して、自動で外部ページに送信するフォームを印刷することもできます郵便で – Wanderson

+0

.....はい、これはjavascriptで行うことができます...私は、この作業を得るためにJavaScript以外の方法があると思いました...しかし、ありがとう、私はそれをこのようにしよう!すでに解決策が考えられています... – Mikaelik

答えて

1

header("Location: http://domain.com/script.php");を使用して、ユーザーを別のアドレスにリダイレクトすることができます。これはあなたのスクリプトで何かが出力される前に実行する必要があるので、すべてのカールエラーなどを正しく捕らえて、醜いPHPエラーメッセージを避けるようにしてください。

+0

はい、私はこれを試しましたが、POSTの変数は空です。何も外部のスクリプトには送信されません... – Mikaelik

+0

これは、curlで行われたPOST要求に加えて行う必要があります。 –

+0

curl_exec()の前に位置を変更しましたが、そこにポスト値はありません。curl_exec()の後にリダイレクトはありませんでした。 – Mikaelik

関連する問題