2017-11-21 3 views
0

以下のコードでは、このフォームを使用する際に、さまざまな金額をPaypalに送金します。すべてのデータは、要素がブラウザで検査されている場合でも正確です。しかし、Paypalサイトがアクティブな場合、私はいつも1金額USD25.00を取得します。 $ pitch-> option_valueごとに異なるはずです。Paypalはフォームを介して間違った金額を取得します

各変数$ pitch-> option_valueは、自分のサイトで正しく入力されています。しかし、Paypalは25しか見ることができません。

私は間違っているか忘れていますか?

$i = '1'; 
foreach($pitches as $pitch) { 
if($i == 1) { 
    $month = __('Month','agent-plugin'); 
} else { 
    $month = __('Months','agent-plugin'); 
} 

$content .= '<form id="GotoPaypal" action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_blank"> 
<input type="hidden" name="cmd" value="_xclick"> 
<input type="hidden" name="charset" value="utf-8"> 
<input type="hidden" name="return" value="'.get_home_url().'/en/my-account/"> 
<input type="hidden" name="item_name" value="'.$i.' '.$month.'"> 
<input type="hidden" name="amount" value="'.$pitch->option_value.'"> 
<input type="hidden" name="currency_code" value="USD"> 
<a href="#!" onclick="event.preventDefault();document.getElementById(\'GotoPaypal\').submit();"> 
</form>'; 
    $i++; 
} 
return $content; 

答えて

0

$月の値は、常に関係なく、私が持っているだろうどのような値$、同じできなくなりますので...

if($i == 1) { $month="25" } else { $month="25" } 

は同じトリックを行います。)

$ iをsomekindの静的な値として定義したのはなぜですか?

+0

どこで$ iを増やしますか? Foreachはそれ自身をインクリメントすることはありません。($ i = 0; $ i <$ pitches_count; $ i ++) もちろん:$ pitchches_count = count($ pitchches); – Trueman

+0

$ iお支払いの追加情報として必要です。 $ monthはこの例のテキストではありません。 金額は$ pitch-> option_valueで表示されます。したがって、option_valueはテーブルから取得しています。 – Hermants

+0

foreachを使うこともできますが、foreachの最後の括弧が$ i ++を追加することで$ iの値を増やします。文 – Trueman

関連する問題