[Tep-j-develop] Re: こんな商品も買えてしまいます

Back to archive index

TAMURA Toshihiko tamur****@bitsc*****
2003年 9月 6日 (土) 18:43:56 JST


こんにちは、田村です。

ステータスが'0'の商品が精算されてしまう件につきまして。

# 気になっていたんですが、ずいぶん遅くなってしまいました。

TAMURA Toshihiko <tamur****@bitsc*****> wrote:

> > #実際は商品IDを覚えられてしまって直接アクセスされたり、検索エンジンに
> > #リンクることも考えられるので、根本的な解決はproduct_info.phpの中でする
> > #べきなのかもしれません
> 
> 何日も前からカートにいれたままになっていた商品の
> ステータスがOFFになったというのもありえますので、
> レジに進むときにチェックが必要だと思います。

一番簡単でひととおりカバーできる対策として、ステータスが'0'の商品を、
在庫0として扱う方法があります。

catalog/includes/functions/general.php の tep_get_products_stock() を
次のように修正します。
------------------------------------------------------------
// Return a product's stock
// TABLES: products
  function tep_get_products_stock($products_id) {
    $products_id = tep_get_prid($products_id);
    $stock_query = tep_db_query("select products_quantity, products_status from " . TABLE_PRODUCTS . " where products_id = '" . $products_id . "'");
    $stock_values = tep_db_fetch_array($stock_query);

    return ($stock_values['products_status'] == '1')
           ? $stock_values['products_quantity']
           : 0;
  }
------------------------------------------------------------

ショッピングカートのページで、
在庫切れの場合と同じメッセージが表示されます。

-- 
田村敏彦 / 株式会社ビットスコープ
E-mail:tamur****@bitsc*****
http://www.bitscope.co.jp/




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