2011-07-19 8 views
1

私はレストランのオンライン注文フォームを作成しようとしています。異なる入力フィールドを必要とするさまざまなタイプの食品があります。ユーザーがリンクをクリックして特定の製品を追加した後で、これらの入力フィールドを追加するためにjQueryを使用しています。私は基本的にこれらのフォームフィールドをdivに追加して、ユーザーがそれらを記入できるようにしています。jQuery/PHPを使用したHTMLフォーム配列

ユーザーがアイテムを追加して送信ボタンをクリックすると、PHPを使用して注文をメールアドレスに送信します。私はPHPで電子メールを送信する方法を知っていますが、フォームデータをすべて電子メールに取り込む方法がわかりません。

投稿ボタンが押されるまで、ユーザーが追加するフィールドの数はわかりません。私の質問は、ユーザーがフォームのフィールドをすべて取得し、電子メールの本文文字列に吐き出すために何をすることができますか?配列を使ってすべてのフォームデータを保存し、PHPで配列を調べ、すべてのデータを取り出すことはできますか?

ありがとうございました!例えば

答えて

1

提出されたフォームデータのすべてのことを通じて$_POST配列...ループ内にあり、何が必要でしょう...

(あなたが取得しているフィールドの名前を知っていると仮定すると、 )からのデータ:

foreach($_POST as $field => $value){ 
    //$field will contain the name of the field 
    //$value will have the value the user entered 
    //You can add a switch statement to do something specific with the fields 
    switch($field){ 
     case 'burger': 
      //do burger stuff 
      break; 
     case 'salad': 
      //do salad stuff 
      break; 
     default: 
      //I don't know what food this is ... 
    } 
} 
+0

どのようにすればよいのかのコード例を教えてください。ほんとうにありがとう。ありがとう。 – Zach

0

あなたは、単に提出されたデータのための$_REQUEST['NAME_OF_USER_INPUT']または$_POST['NAME_OF_USER_INPUT']を検討し、この分野に応じて電子メールのテキストを構築することができます。

+0

どのフィールドがあるのか​​分かっていれば、これを使用します。私は電子メールの中にある必要があるいくつかの必須フィールドだけを知っています。しかし、彼らはサラダとハンバーガーを追加しないと、私はハンバーガーの名前を探してはいけません。 – Zach

0

すべての入力に同じ名前を付けて通常の送信を使用すると、その名前の値は追加されたもののコンマ区切りのリストになります。それがあなたが望むなら、それは簡単です。