0

入力されたデータ(その部分がカバーされている)を電子メールで送信するだけでなく、データを別の外部ページ(この要求を処理できる)に送信するために、送信ボタンを使用するHTMLフォームを作成しようとしています。

私はそれを次のようにすることで機能させることができます:

<form name="contactform" method="post" action="http://somesite.com/page.php">

ただし、同時にローカルページ(form.php)に送信する必要もあります。

送信ボタンに対してこれを行うことで、JavaScriptを試しました。

  <input type="submit" value="Submit" onclick="return doSubmit();"> 

ソースにこのコードがある場合:

function doSubmit()
{
    document.contactform.action = "form.php";
    document.contactform.submit(); 
    document.contactform.action = "http://somewebsite.com/page.php";
    document.contactform.submit(); 
    return true;
}

しかし、これを行うと、情報は私の電子メールに送信されず、form.phpに結果を表示する代わりに、ページが更新されます。

これを簡単な方法で機能させる方法について何かアイデアはありますか?

4

3 に答える 3

1

ブラウザは設計上、ウィンドウごとに一度に1つのリクエストしかロードできないため、同時に複数のアクションを送信することはできません。いくつかの解決策は次のとおりです。

  1. フォーム入力処理を行うのと同じサーバースクリプトを使用して電子メール処理を行うだけです
  2. フォームデータをajax経由で電子メールスクリプトに送信し、完了時に通常どおりフォームを送信します。
于 2013-02-25T04:33:40.883 に答える
0

PHPスクリプトに関数を追加/変更することをお勧めします。その後、投稿されたデータを使って好きなことをすることができます。

于 2013-02-25T04:35:42.153 に答える
0

もちろん、2つのフォームを送信することはできません。次の2つのいずれかを試すことができます。

  • それらの1つをajaxリクエストにして、送信前に実行されるように設定します。
  • サーバー側の最初のファイルから直接2番目のphpファイルを実行します。
于 2013-02-25T04:34:21.793 に答える