どうしても複数のページへPOSTデータを送信したいなら、スクリプトで実行してはどうでしょうか?formのactionに書いたリンク先のスクリプトでPOSTデータを処理し、そこから別のページへPOSTデータを送信します。これは
fsockopenを使うことで可能です。ご存知かもしれませんが、コードは簡単に書くと以下のようになります(送信先アドレスが
http://www.example.com/recieve.phpであり、送信データは名前がvalで値が$valueであるとします)。
// ソケットを開く
$fp =
fsockopen("www.example.com", 80, $errno, $errstr, 30);
// エラー処理
if (!$fp) {
echo $errno."<br>";
echo $errstr."<br>";
exit;
}
// データをPOST用に整える
$data = 'val=' .
urlencode($value);
// データをPOST形式で記述する
$post = "POST
http://www.example.com/recieve.php HTTP/1.1\r\n";
$post .= "Host: www.example.com\r\n";
$post .= "Content-Type: application/x-www-form-urlencoded" . "\r\n";
$post .= "Content-Length: " .
strlen($data) . "\r\n\r\n";
$post .= $data ."\r\n";
// 送信する
fputs($fp, $post);
// レスポンスを取得
$response = "";
while (!
feof($fp)) {
$response .=
fgets($fp, 4096);
}
// ソケットを閉じる
fclose($fp);
といったところでしょうか。直接書いているので少し猥雑な感じになります。ロジックをすっきりとさせたいなら、PEAR::HTTP_Requestを使うと良いと思います。これにはHTTP_Request、Net_Socket、Net_URLの3つのパッケージが必要となりますが、PEARホームページからダウンロードして下さい。コードは以下のようになります。
require_once("HTTP_Request/Request.php");
// ソケットを開き、送信形式を指定し、データを送信する
$req = new $HTTP_REQUEST("
http://www.example.com/recieve.php");
$req->setMethod(HTTP_REQUEST_METHOD_POST);
$req->addPostData('val', $value);
// レスポンスを取得する
if (!PEAR::isError($req->sendRequest())) {
$response = $req->getResponseBody();
}

kende様のご指摘通り、三項演算子を使用する際には、コードの複雑度などを考慮する必要がありますね。書きやすさと共に可読性も追求したいところですね。