ipod_users****@mac*****
ipod_users****@mac*****
2005年 3月 2日 (水) 22:17:09 JST
吉井です。田村様、伊豆様、はまだ様、ありがとうございます。 在庫不足で戻された場合の管理者へのメール送信もうまくいきました。 一応書いておきますと...。 // Stock Check if ( (STOCK_CHECK == 'true') && (STOCK_ALLOW_CHECKOUT != 'true') ) { $products = $cart->get_products(); for ($i=0, $n=sizeof($products); $i<$n; $i++) { //ココからメール送信 $email_uncheckout_to_master = "お客様から注文がありましたが、在庫不足のため完了できませんでした。\n\n";//メール内容 if (SEND_EXTRA_ORDER_EMAILS_TO != '') { tep_mail('', SEND_EXTRA_ORDER_EMAILS_TO, 'オーダーエラーの報告です。', nl2br($email_uncheckout_to_master), STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS, '');//送信部分 } // Stock Checkの後半部分 if (tep_check_stock($products[$i]['id'], $products[$i]['quantity'])) { tep_redirect(tep_href_link(FILENAME_SHOPPING_CART)); break; } } } のようにいたしました..。 全体の流れは、こうなります。(と思っています。) ------------------------- 同時に、[カートに入れる]==>[手続完了!]の間に複数名のお客様が入ってきます。 ↓↓↓↓↓ 一人のお客様が[注文する!]のあとルミーズの決済を済まして『手続完了!』まで進みます。==>購入成立 ↓↓↓↓↓ それ以外のお客様は、[注文する!]のあとルミーズの決済を済まして、戻って来たところでcheckout_process.phpのStock Checkがエラーになります。 ↓↓↓↓↓ ショップ管理者にエラー報告のメールを送信します。 お客様は、un_checkout.phpに飛ばされ、手続きの間に売り切れになったことを告げられます。 (カートに入れた商品が多数の場合ココでもう一度カートに戻れば、在庫の無くなった商品だけをキャンセルしてまた購入に進めます。) ↓↓↓↓↓ ショップ管理者は、エラーメールを確認したあと、ルミーズで決済の取り消し処理をします。 ※ルミーズに決済額の1%取られてしまいますが..。w ------------------------- ひとまず、これで、ウチの問題は解決したかと思います。 伊豆様の懸念された、"買い占めもどき"の被害に遭うことも無いようです。 もしお気づきの問題点があればご教授くださいませ..。 このたびは、ありがとうございました。