[Tep-j-general] Re: 在庫がなくなったのに注文できてしまう

Back to archive index

Akira TANIGUCHI tanig****@prime*****
2003年 4月 30日 (水) 18:08:53 JST


こんにちは。谷口です。

>>田村さん
> こちらでも同じ現象を確認しました。
> MS1でも同じです。

あらー。MS1でも同じでしたか。


> まれにしか起こらない現象だとは思いますが、
> ショップによっては問題でしょうね。

そうですね。
うちで扱う商品が中古の海外製テーブルゲームという1点ものばかりなので、
在庫チェックを念入りに調べていたから見付けたんだと思います。


> 対策は、ソースコードを修正するしかないと思います。

とりあえず的に対処しました。

/catalog/checkout_process.php の最初の方
include(DIR_WS_LANGUAGES . $language . '/' . FILENAME_CHECKOUT_PROCESS);
のあとに下記コードを加えました(checkout_confirmation.phpからまるごと拝借(^_^;)

// Stock Check -- 2003/04/30 Taniguchi
  $any_out_of_stock = 0;
  if (STOCK_CHECK == 'true') {
    $products = $cart->get_products();
    for ($i=0; $i<sizeof($products); $i++) {
      if (tep_check_stock($products[$i]['id'], $products[$i]['quantity'])) {
        $any_out_of_stock = 1;
      }
    }
    // Out of Stock
    if ( (STOCK_ALLOW_CHECKOUT != 'true') && ($any_out_of_stock) ) {
      tep_redirect(tep_href_link(FILENAME_SHOPPING_CART));
    }
  }

うちで何回か試した限りではこれでだいたい大丈夫でした。ほとんど同時
にクリックするとまだダメなのですが、まあ我慢の範囲ということで、こ
れで行って、正式な対策が出たらそれに乗り換えることにします。


> 本家のほうには報告します。
> その反応を見て、日本語版単独でも対策するかどうか判断したいと思います。

ありがとうございます。
よろしくお願いします。

----------------------------------------
谷口 明 (Akira TANIGUCHI)
tanig****@prime*****
----------------------------------------



Tep-j-general メーリングリストの案内
Back to archive index