2011-04-13 9 views
0

私たちは細部の詳細を集めて、特定の人に電子メールを送るメールプログラムにそれを提出するフォームを持っています。PHPで処理した後にフォームを送信する

フォームとメールプログラムの間に特別な処理を加える必要があります。このプログラムは、dbから情報をチェックし、それに応じてフォームデータを変更します。

私はこれにcurlを使うことができると思っていましたが、処理を行うと、フォームを提出し、PHPが存在しないような方法で実行する必要があります。カールでこれを行う。

質問がありますか?または、これについてもっと良い方法がありますか? (私はメールとフォームの両方を少し変更することができますが、できるだけ同じままにしておく必要があります)。

編集:私はどのような情報を入れることができるのか分かりませんが、私はそれを試して単純化します。現時点で

:フォーム - >メールプログラム

私がやろうとしています何:フォームは - > PHP - >メールプログラム

メールプログラムは、POST変数を取るので、私は何をしたいつかむれますそれらの変数の一部を変更してメールプログラムに送信すると、以前のプロセスは同じように見えます。

+1

私はあなたが満足にこの質問に答えるために十分な情報を掲載しましたとは思いません。 – alex

+0

メールスクリプトPHPもありますか?あなたはそれを制御しますか、フォームはリモートサーバーに投稿しますか? –

+0

ナー、それは別の言語で書かれたアプリケーションであり、私はそれをほとんどコントロールしていません。 – Rudiger

答えて

0

短い答えは、私は必要なもののためにそれを行うことができ、カールした、必要に応じて:

`curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, 1);` 
0

処理された値でいっぱいの属性を持つフォームを生成するようにPHPファイルを作成します。最後にJavascriptを使用してフォームを送信します。

1

は、この使用します。

http://wezfurlong.org/blog/2006/nov/http-post-from-php-without-curl/

<?php 
function do_post_request($url, $data, $optional_headers = null) 
{ 
    $params = array('http' => array(
       'method' => 'POST', 
       'content' => $data 
      )); 
    if ($optional_headers !== null) { 
    $params['http']['header'] = $optional_headers; 
    } 
    $ctx = stream_context_create($params); 
    $fp = @fopen($url, 'rb', false, $ctx); 
    if (!$fp) { 
    throw new Exception("Problem with $url, $php_errormsg"); 
    } 
    $response = @stream_get_contents($fp); 
    if ($response === false) { 
    throw new Exception("Problem reading data from $url, $php_errormsg"); 
    } 
    return $response; 
} 

をPHP5が必要です。 PHPで必要なデータをすべて整理し、ポスト値をストリームアウトします。

関連する問題