[Tep-j-general] Add 'in-stock' only filter でフォームをクリックするとクエリが上書きされる

Back to archive index

MiNE + Chotchke Books + mine****@chotc*****
2007年 9月 30日 (日) 16:42:37 JST


こんにちは、
大変初歩的な問題だと思うのですが、どうしてもわからずに
ここで質問させていただきます。すみません。


Add 'in-stock' only filter
http://addons.oscommerce.com/info/2805


こちらのcontributionを使っています。
商品一覧や検索の際にチェックボックスで
在庫のある商品のみを表示させるというものです。


ごく簡単な改造なはずで、default.phpをたとえに出すと、
ソート関係の部分の上に

if (isset($HTTP_GET_VARS['instock']))
      {
      $listing_sql .= " and p.products_quantity > 0";
      }


フォーム部分(チェックボックス)は

<?php echo tep_draw_checkbox_field('instock', 1, false,
'onClick="this.form.submit()"') . HEADER_INSTOCK . '</form></td>';
                        ?>


と以上です。ところが実際の画面上で、
このチェックボックスをクリックしてみると、クエリが上書きされてしまいます。

http://www.xxx.org/catalog/default.php?cPath=22_23
↓クリックすると
http://chotchke.org/catalog/default.php?instock="1"


となります。手入力で、商品のパスにinstock="1"を付け加えると

http://www.xxx.org/catalog/default.php?cPath=22_23&instock="1"

これはちゃんと在庫ありの商品のみが表示されます。
現在のURLの末尾にinstock="1"をつけるのをどうしたらいいのか
php初心者のため、分からずに悩んでいます。


皆さんがお使いのcontributionじゃないのは分かっていますし、
本当に初歩的なことで申し訳ありませんがお力を借りたく、
投稿いたします。よろしくお願いいたします。

Mine




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