2016-05-14 7 views
1

お客様は、CheckBoxと数量を使用して注文を選択し、最後に価格の合計を得ることができるレストラン注文概要を作成しようとしています。 私は自分のコードに数量を追加する方法を理解できないようです。 それは最後に言っている:あなたは(例えば)チキンを選択した 私はそれが言いたい:あなたが選択している。ここチキン 5それは次のとおりです。HTML PHPチェックボックスに数量と価格の値を追加して送信する方法

<body> 
<h3>Select what you want to eat</h3> 

<form action="PlaceOrder.php" method="get"/> 
<input type="checkbox" name="choice[]" value="1"/>Chicken,Price:8 
<input name="quantity[]" type="text" /><br /> 
<input type="checkbox" name="choice[]" value="2"/>Meat,Price:3<br /> 
<input type="checkbox" name="choice[]" value="3"/>Souvlaki,Price:2.50<br /> 
<input type="checkbox" name="choice[]" value="4"/>Pizza,Price:12<br /> 

<input type="submit" value="Order"/> 
</form> 

とPHP:

<?php 
if(isset($_GET["choice"])){ 
$food=$_GET["choice"]; 
$quantity=$_GET["quantity"]; 
$c = count($food); 
$price = 0.0; 


for ($i=0; $i<$c ; $i++){ 
    if ($food[$i] == 1){ 
     $price = $price + 8; 
//here it's not working with quantity 
     echo "You have selected " .$quantity." Chicken <br>"; 
    } 
    if ($food[$i] == 2){ 
     $price = $price + 3; 
     echo "You have selected Meat <br>"; 
    } 
    if ($food[$i] == 3){ 
     $price = $price + 2.5; 
     echo "You have selected Souvlaki <br>"; 
    } 
    if ($food[$i] == 4){ 
     $price = $price + 12; 
     echo "You have selected Pizza <br>"; 
    }  
    } 

    echo "Total: ".$price . "<br>"; 
} 
else { 
echo "Please select something!"; 
} 


?> 




</body> 

My Picture Example please view

+1

$数量[i]は解くことができました。私はそうだと思う.. –

+1

各チェックボックスに数量のテキストフィールドが必要ないのですか? – Ankit

+0

あなたは私に正しい方向を与えました、ありがとうございます、実際にはそれはそうでしょう: $수량[$ i] それを解決しました!今私はチキンで数量のボックスに2を入れたら、私はあなたが2つのチキンを選択しています。完璧に動作します! tnx – Johnny

答えて

1

、あなたがここで必要(のみ鶏用)1つの特定値は[]

を取り除くため、配列として名前を付けする必要はありません210
<input name="quantity" type="text" /><br /> 
0

の代わりに:

<input name="quantity[]" type="text" /><br /> 

の操作を行います。また、あなたは(<br />のような)/を終了する必要はありません

<input name="quantity" type="text"><br> 

、それは私がこれらを削除した(何も与えていません私の提案では)。以上の1が選択されている場合

そしてここでは、追加の「S」の文字を表示するには少し改善されたコードです:

echo "You have selected ".$quantity." Chicken".($quantity > 1 ? "s" : "")." <br>"; 
関連する問題