大洞
pirate_ship****@lived*****
2008年 5月 28日 (水) 21:10:05 JST
はまだ様 早速お返事をいただきまして、ありがとうございます。 データーベースにアクセスするにも決まりごとがあるんですね。 ************************************************************** 「ループしてないから」 ではないかと思います(^_^;) osCで「DBから値を抜く処理」はフツー > while ($data = tep_db_fetch_array($result)) { > > 処理する内容 > > } みたく書くと思うんすが、このループが無いのでそのまま過ぎ去り、最初の値し か取得出来ないように見えるのではないかと。 ************************************************************** 早速ループ処理をしたところ、すべての値を取得することができました。 まさにそのとおりでした。 大変、参考になりました。 それとご紹介いただきましたモジュールを早速インソールしてテストしたところ、まさに私が望んでいたモジュールでしたので ************************************************************** Show All Products in Category & Subcategories V1.0 http://addons.oscommerce.com/info/5351 ************************************************************** 今回はこれを活用しようと思います。 わたしと同じ事を望んでいる方にはお勧めですね。 ここまで、悩んでテストして作成した時間が無駄に思えるくらい簡単に導入する事ができました。 日本語版とはページ等や弱間の構文エラー等があったので、下記に今後の方のために記載しておきますね。 はまだ様のようにoScに精通していらしゃる方がメーリングリストに見えますと私のような初心者にはとても助かります。 今後ともよろしくお願いします。 本当にありがとうございました。 *注 インソールする前にデーターのバックアップを忘れずに。 変更ファイル catalog/default.php、catalog/includes/modules/product_listing.php バージョンosCommerce 2.2 MS1j-R8の場合 catalog/default.phpの変更点 1 P20 変更箇所 if ($cateqories_products['total'] > 0) { $category_depth = 'products'; // display products } else { 変更後 if (tep_count_products_in_category($cPath) > 0) { $category_depth = 'products'; // display products } else { ******************* catalog/default.phpの変更点 2 P189 変更箇所 // We show them all $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'"; } 変更後 // We show them all $cPathA = explode("_", $cPath); $size = sizeof($cPathA)-1; $subcategories_array = array(); tep_get_subcategories($subcategories_array, $cPathA[$size]); $size_sc = sizeof($subcategories_array); //Subcat count $cat_Search = "("; for($i = 0; $i < $size_sc; $i++){ $cat_Search .= "p2c.categories_id = '" . $subcategories_array[$i] . "' or "; } $cat_Search .= "p2c.categories_id = '" . $cPathA[$size] . "'" . ")"; $listing_sql = "select distinct " . $select_column_list . " p.products_image, pd.products_name, p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and " . $cat_Search . ""; } ******************* 以上 catalog/default.php //////////////////////////////////////////////////////////////////////////// catalog/includes/modules/product_listing.phpの変更点 1 P114 変更箇所 case 'PRODUCT_LIST_NAME': $lc_align = ''; if (isset($HTTP_GET_VARS['manufacturers_id'])) { $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'] . '&products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a>'; } else { $lc_text = ' <a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a> '; } 変更後 case 'PRODUCT_LIST_NAME': $lc_align = ''; if (isset($HTTP_GET_VARS['manufacturers_id'])) { $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'] . '&products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a>'; } else { $lc_text = ' <a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a> '; } ******************* catalog/includes/modules/product_listing.phpの変更点 2 P142 変更箇所 case 'PRODUCT_LIST_IMAGE': $lc_align = 'center'; if (isset($HTTP_GET_VARS['manufacturers_id'])) { $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'] . '&products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a>'; } else { $lc_text = ' <a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a> '; } 変更後 case 'PRODUCT_LIST_IMAGE': $lc_align = 'center'; if (isset($HTTP_GET_VARS['manufacturers_id'])) { $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'] . '&products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a>'; } else { $lc_text = ' <a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a> '; } ******************* 以上 catalog/includes/modules/product_listing.php //////////////////////////////////////////////////////////////////////////// 終了 > > > > > -------------- next part -------------- HTMLの添付ファイルを保管しました... Download