2012-01-05 10 views
0

ショッピングカートのアプリケーションの種類。 ajaxソース(すべてのソースは同じxD)と不明な数のサービス(unknown cuz 'はデータベース内で増加します)からロードします。 サービスを希望するかどうかを示すチェックボックスで表され、2つの入力が表示され、価格は無効に設定され、もう一方は数量が設定されます。入力が不明確なPHPを受信しようとしています

問題はどのように私はそれらをすべてphpに送ってプロセス(合計価格計算とデータベースの挿入)を行うのですか?私はそのような何かを達成するための方法がありますかどうかを知りたいが、入力となり、複数の選択のためのブラケットで

<select name="something[]">... ...</select> 

を属性名の入力を使用しています。ここmooitems.- の一種で または多分いくつかの空想のjQueryのプラグインは、私の合計は(あなたはまずcategoriaをVIAJEを選択する必要が試み:(

http://www.micontrol.cl/~mvargas/wordpress/wp-transatacama/reservas-rapidas/form-reservas-pal.php

を失敗参照するページです、関連サービスは今表示され、最終的にフォームを提出できるように大人のqttyを調整する...申し訳ありませんフローはrequirimentだった://

いくつかのガイダンス、何でも:D は事前に

+1

はい、それは入力要素にも有効です。変更は必要ありません。 – goat

答えて

0

jquery serialize()を見ないのはなぜですか?その後、

http://api.jquery.com/serialize/

とちょうどあなたのAJAX呼び出しの方法に応じて、あなたのPHPに[] $ _POST []または$ _GETを反復処理します。

http://www.php.net/manual/en/reserved.variables.post.php#84813

+0

私はそれが助けになるかもしれないことを私にチェックさせてください.- 私はJSレスポンスを探していた、それは不可能と思う:/ –

+0

あなたはそれらを送信することができます...あなたはjsを使う必要はありませんあなたは実際にajaxを使うのではなくフォームを提出しています。$ _POSTまたは$ _GETには、フォームを送信したときにフォーム上にあったname属性を持つすべての正常なコントロールが含まれます。 2番目のリンクは、phpの配列からキーと値を使って変数を作成する方法を示しています。 – nobody

+0

サービスが同じ名前を持っているという問題:/。 私はそれらをphpから動的に作成していましたので、私のオプションはそれらに名前を付けました(すべて同じ)。名前を付けたり、何も意味を持たない番号付きの名前を動的に作成したりしなかった。 その理由は、私は選択した複数の[]のような何かをする方法があったと尋ねていた –

1

オクラホマので、あなたは、サーバーに送信する複数のアイテムを持っている場合は、動的な次のようなものを(見て、あなたのHTMLを構築する必要があります。

また、これは有用である可能性がありますものは)[]角括弧で示されています

<input type="checkbox" name="service_[service_id]" value="[service_id]"/> [service_name]<br/> 
<input type="text" value="[price]" disabled/> 
<input type="text" name="quantity_[service_id]"/> 

あなたは、このようにサービスや数量などの接頭辞()およびそのサービスのIDである接尾辞で構成される入力の名前を構築する必要がfを確認することができますまたはそれらをPHPで実行します。

今、PHPで、あなたがこのような何か行うことができます:ここで

<? 
    $prefix = "service_"; 
    foreach ($_POST as $name => $value) 
    { 
     if (substr($name, 0, strlen(prefix)) == $prefix) 
     { 
      $serviceId = $value; 
      $quantity = $_POST[ "quantity_$serviceId" ]; 
     } 
    } 
?> 

をあなたは私が接頭辞あるSERVICE_NAMEで始まるフィールド名を見つけようとしてPOSTデータのすべてをループを作成しました見ることができますし、一度見つけたら、その値はサービスIDです。それから私は選択されたサービスIDと共に送られたquantity_ [service_id]フィールドを見つけるためにサービスIDを使うことができます。

私はこれが役立つことを望みます...

+0

私はそれを行う方法だと思うが、少し乱雑です –