1

このコードでは、数量を変更する必要がありますが、変更されていません。常に値「1」を設定します。

<?php
if(isset($_POST["quantity"]))
  $quantity = settype($_POST["quantity"], "integer");
else
  $quantity = 1;

$item_price = 5.99;
printf("%d x item = $%.2f", 
        $quantity, $quantity * $item_price);
?>
<FORM ACTION="buy.php" METHOD=POST>
Update quantity:
<INPUT NAME="quantity" SIZE=2 
 VALUE="<?php echo $quantity;?>">
<INPUT TYPE=SUBMIT VALUE="Change quantity">
</FORM>
</body>
</html>
4

2 に答える 2

2

settype変数のタイプを設定するために使用され、bool成功または失敗を示す値を返します。(型キャストを使用して)に$_POST値を割り当てる必要があります。これを試してください。$quantity

if(isset($_POST["quantity"])) {
  $quantity = (int)$_POST["quantity"];
} else {
  $quantity = 1;
}

// or
$quantity = isset($_POST["quantity"]) ? (int)$_POST["quantity"] : 1;
于 2012-07-21T10:53:20.360 に答える
0

で試してみてください

 if(isset($_POST["quantity"]))
      $quantity = intval($_POST["quantity"]);
于 2012-07-21T10:53:37.390 に答える