2017-10-09 10 views
0

現在5つの製品で自己処理フォームを作成しています。ユーザーは5つの製品のいずれかの数量を入力できます。私がしなければならない、ユーザーが数量を入力した後if関数の作成を支援する必要があります

// Print the product display 
for ($i = 0; $i < sizeof ($product_display); $i++){ 
print "<tr><td>" .$product_display[$i]['image'] . "</td>"; 
print "<td>" . $product_display[$i]['model'] . "</td>"; 
print "<td> $" . $product_display[$i]['price'] . "</td>" ; 

// Allow user inqut for quantity 

print "<td> <input type = 'text' name = 'qty_entered[]' value ='0' size = '3' maxlength = '3'> </td> </tr>";} ?> 
    </table> 

      <br><input type = 'submit' name = 'submit_button' value = 'Submit Order'><br><br> 

、および送信ボタンを押してください:私は、製品の表示を印刷する機能のために、次のしているので、彼らは

$_POST[qty_entered] 

に入力された数量を保存しました有効な数量(正の整数)を入力したことを確認し、ユーザーが有効な数量を入力した場合は請求書を印刷します。彼らは有効な数量を入力しなかった場合、私はエラーメッセージを印刷し、請求書を表示する必要があります。以下のコードは私が今使っているものですが、正しく表示させるために問題があります。私が間違っていると信ずることは、何とか$ _POST ['qty_entered']に保存されている複数の量を参照する必要があるということです。しかし、[0] [1] [2] [ 3]、複数のものを使用するとエラーになります。 [$ i]も動作しません。

// Make sure quantity entered is a positive whole number and print table row 
     $errors = FALSE; 
if (array_key_exists ('submit_button', $_POST) && is_numeric($_POST['qty_entered'][0]) && $_POST['qty_entered'][0] > 0) { 
print "<h2>Invoice</h2> <br> <table style='border-collapse: collapse; text-align: center' 
        height='319' border='1' bordercolor='#111111' 
        cellpadding='0' cellspacing='0' width='514'> 

     <!-- create header use <th> --> 
     <tr> 
      <th>Phone</th> 
      <th>Price</th> 
      <th>Quantity</th> 
      <th>Extended Price</th> 
     </tr>"; 
} 
else { 
    $errors = TRUE; 
    Print "Please enter a valid quantity."; 
} 

ユーザーが送信ボタンを押した後に有効な数量を入力したかどうかを確認するには、適切なif関数を作成してください。入力した数量が有効な場合は請求書を印刷し、そうでない場合はエラーメッセージを印刷します。

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

答えて

0

使用するforeach:ユーザーが数量を入力しない場合

// Start out assuming all products have quantities 
$allProductsHaveQuantities = true; 
foreach($_POST['qty_entered'] as $idx => $qty) 
{ 
    // Look for any quantities that are zero 
    if($qty == 0) 
    { 
    // One is enough, so set the flag and stop the loop 
    $allProductsHaveQuantities = false; 
    break; 
    } 
} 

// Now check the result of the flag 
if(!$allProductsHaveQuantities) 
{ 
    ...your error message here... 
} 
+0

こんにちは、実際にはないすべての製品の数量を入力していますが、いくつかはnullになります。したがって、私は誰もが量を入力することは想定できません。これどうやってするの? –

関連する問題