質問
Paypalを使用して、サイトで支払いを処理しています。 Paypalは次のような投稿配列を返します
[item_number1] =12
[item_name1] = My product name
[quantity1] =3
[item_number2] =14
[item_name2] = My product name2
[quantity2] =5
[num_cart_items] 2
ここにステップを挿入します
そしてforループを実行します
for($i = 1;$i <= $num_cart_items ;$i++){
$x = 'item_number' . $i;
$y = 'item_name' . $i;
$z = 'quantity' . $i;
$new_amount = $row['stock_quantity'] - $z;
$db->update1_by_match('cart_products','stock_quantity',$new_amount,'id',$x);
}
これらの変数変数に問題があります。これを行うためのより良い方法はありますか?
ありがとう アンドリュー
解決
修正したコードを変更して、$ _ POSTを直接使用します。例:
for($i = 1;$i <= 修正したコードを変更して、$ _ POSTを直接使用します。例:
$item_numbers=array(24, 16);
foreach ($item_numbers as $item_number) {
$result = $db->get_cols_by_match('cart_products','stock_quantity','id', $item_number);
}
診断出力は、物事がどこに向かっているかを絞り込むのに役立ちます。
以前の質問-以下の注記は、完全な改訂が行われる前の質問を指します。
本当に必要なのは、変数変数を使用するのではなく、配列です
$item_number1='24';
$item_number2='16';
$num_cart_items = 2
for($i = 1;$i <= $num_cart_items ;$i++){
$varname='item_number' . $i;
printf("DEBUG: %s = %s<br>", $varname, $varname);
$result = $db->get_cols_by_match('cart_products','stock_quantity','id', $varname);
}
あなたがそれをしていたようにそれを行うには、このような何かがそれを明確にするかもしれません
<*>
$$ varnameは、変数変数の例です 、しかし、あなたの場合、配列はより明確な方法で意図を宣言します。
POST['num_cart_items'] ;$i++){
$item_number= intval(修正したコードを変更して、$ _ POSTを直接使用します。例:
<*>
診断出力は、物事がどこに向かっているかを絞り込むのに役立ちます。
以前の質問-以下の注記は、完全な改訂が行われる前の質問を指します。
本当に必要なのは、変数変数を使用するのではなく、配列です
<*>
あなたがそれをしていたようにそれを行うには、このような何かがそれを明確にするかもしれません
<*>
$$ varnameは、変数変数の例です 、しかし、あなたの場合、配列はより明確な方法で意図を宣言します。
POST['item_number' . $i]);
$item_quantity= intval(修正したコードを変更して、$ _ POSTを直接使用します。例:
<*>
診断出力は、物事がどこに向かっているかを絞り込むのに役立ちます。
以前の質問-以下の注記は、完全な改訂が行われる前の質問を指します。
本当に必要なのは、変数変数を使用するのではなく、配列です
<*>
あなたがそれをしていたようにそれを行うには、このような何かがそれを明確にするかもしれません
<*>
$$ varnameは、変数変数の例です 、しかし、あなたの場合、配列はより明確な方法で意図を宣言します。
POST['quantity' . $i]);
printf("DEBUG: item %d item:%d quantity:%d<br>", $i, $item_number, $item_quantity);
$new_amount = $row['stock_quantity'] - $item_quantity;
$db->update1_by_match('cart_products','stock_quantity',$new_amount,'id', $item_number);
}
診断出力は、物事がどこに向かっているかを絞り込むのに役立ちます。
以前の質問-以下の注記は、完全な改訂が行われる前の質問を指します。
本当に必要なのは、変数変数を使用するのではなく、配列です
<*>あなたがそれをしていたようにそれを行うには、このような何かがそれを明確にするかもしれません
<*>$$ varnameは、変数変数の例です 、しかし、あなたの場合、配列はより明確な方法で意図を宣言します。