0

[送信]ボタンがクリックされるとすぐに、POSTデータがサーバーに送信される前に、フォーム要素をHTMLフォームに動的に追加する必要があります。新しい要素は、サーバー上のPHPファイルから「読み取る」必要があります。

履歴:現在、私のHTMLフォームには、処理のために別のサーバーに送信される「非表示」フィールドがあります。私は他のサーバーを制御できません。私の問題は、誰でもこれらの非表示フィールドを編集できることです。

フォームが送信されたらすぐに、POSTデータにフォーム要素を動的に追加するにはどうすればよいですか?

4

3 に答える 3

1

この方法で試すことができます:

  1. 最初に、送信ボタンのタイプを「送信」から「ボタン」(または何でも)に変更して、送信を無効にします

  2. onclickそのボタンを JavaScript ルーチンに挿入します (ここでは を使用します) submit_form()

  3. フォーム内に空の div を作成します。(ここでは で呼び出しますid = 'dynamic')

  4. jquery を使用すると、これはsubmit_form().

  5. 送信する前に、これらの要素が適切にバインドされるまでしばらく時間がかかると思います。たぶん少し前に遅れ$("#myForm").submit()ます;

submit_form()関数のコードは次のとおりです。

function submit_form()
  {
    $("#dynamic").append("<input type='hidden' name='input1' value='whatever'>");
    $("#dynamic").append("<input type='hidden' name='input2' value='whatever'>");
    $("#myForm").submit();
  } 
于 2011-01-31T21:07:12.513 に答える
0

データをサーバーに投稿し、その後、新しい要素を添付して外部サーバーに再度投稿することができます。

あなたの仕事はサーバー側で行われます。

参照:

phpサーバー間投稿?

于 2010-11-30T10:32:24.567 に答える
0

他のサーバーに送信される内容を制御する必要がある場合は、自分で行う必要があります。フォームを自分のサーバーに送信してから検証し、データを追加して他のサーバーに再送信します。

PHP で CURL 拡張機能を使用して、サーバーからデータを送信できます。

于 2010-11-30T10:36:00.140 に答える