質問

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は、変数変数の例です 、しかし、あなたの場合、配列はより明確な方法で意図を宣言します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top