複数のアイテムを含むカートの配列を処理および処理する方法がよくわからないため、PHP カスタム Paypal IPN スクリプトでいくつかの問題が発生しています。
私が達成しようとしているのは、製品ごとに POST 呼び出しがサーバーに返され、一意の ID を使用してその製品の在庫数を減らすことです。
Paypal IPN はアイテム番号を 、 、 などとして返送しますitem_number_1
。item_number_2
次item_number_3
の方法でデータを取得できます。
$id_exp = $_POST['/^item_number(\d*)$/'];
$qty_exp = $_POST['/^quantity(\d*)$/'];
私がする必要があるのは$id_exp
、アレイを作成しfile_get_contents
、各製品に対して実行して、ID と QTY を含む URL に POST することです。これは達成可能ですか?
簡単に言えば、最終結果は、IPN スクリプトがストック リスナーにアクセスすることです (ここではデモンストレーションのみに GET を使用します)。http://www.site.com/listener?prod_id=12345&decrement=3
123,456,789
更新: と呼ばれる var に保存されているように、アイテム ID の配列が正しく印刷されるようになりました。$id_string
現在、配列内の各 ID に対して次のコマンドを実行しようとしています。
foreach ($id_string as $value){
$url = 'http://myserver.com';
$data = array('product_id' => $value, 're_stock' => 'true');
$get = array();
foreach($data as $k => $v){
$post[] = $k . '=' . urlencode($v);
}
$post = implode('&', $post);
$opts = array('http' =>
array(
'method' => 'POST',
'header' => 'Content-type: application/x-www-form-urlencoded',
'content' => $post
)
);
$context = stream_context_create($opts);
file_get_contents($url, false, $context);
}
しかし、何も起こっていません。この段階でのフィードバックをお待ちしております。