以下のコードで数量を選択し、選択した数量のアイテムを確認してから、追加ボタンをクリックしてフォームを送信します。
<form name="addtocart" method="post" action="checkbox.php">
//foreach loop below loops through array of items fetched from the db
<?php foreach($result2 as $row) { ?>
<select name="qty">
<?php for ($i=0; $i < $row['prd_quantity'] + 1 ; $i++) { ?>
<option value = "<?php echo $i; ?>" ><?php echo $i; ?></option>;
<?php }?>
</select>
<input type="checkbox" name="checkitem[]" id="addtocart" value="<?php echo $row['prd_id'] ?>" optional /></p>
<?php } ?>
enter code here
<input type="submit" value="Make Order"/>
</form>
$_POST
選択した後、たとえばselect要素で8とすると、以下の$ ordqtyはまだ0を出力します。ループとスーパーグローバルに関係があると考えていますが、
チェックアイテム[]
動作します。助けていただければ幸いです。ありがとう。
$ordqty = $_POST['qty'];
//$ordqty returns 0.
以下は、最初のアイテムに対して生成されたHTMLです$row['prd_quantity'] = 8
。
<select name = "qty">
<option value="0">0</option>
;
<option value="1">1</option>
;
<option value="2">2</option>
;
<option value="3">3</option>
;
<option value="4">4</option>
;
<option value="5">5</option>
;
<option value="6">6</option>
;
<option value="7">7</option>
;
<option value="8">8</option>
;
</select>