Liste in Spalten

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Liste in Spalten

    Hallo!

    Ich habe folgendes Problem, beid em ich nicht weiterkomme:
    In meiner Shop-Produktliste möchte ich die Artikel in 3 Spalten darstellen. Dies habe ich nun auch hinbekommen. Leider zeigt die Seite jeden Artikel mehrfach an und ich weiß keine Lösung.

    Ich hoffe, mir kann wer helfen!!
    Viele Grüße
    Melanie




    Siehe: Produktliste


    Hier der Quellcode:


    <?php
    /*
    $Id: product_listing.php,v 1.44 2003/06/09 22:49:59 hpdl Exp $

    osCommerce, Open Source E-Commerce Solutions
    http://www.oscommerce.com

    Copyright (c) 2003 osCommerce

    Released under the GNU General Public License
    */

    $listing_split = new splitPageResults($listing_sql, MAX_DISPLAY_SEARCH_RESULTS, 'p.products_id');

    if ( ($listing_split->number_of_rows > 0) && ( (PREV_NEXT_BAR_LOCATION == '1') || (PREV_NEXT_BAR_LOCATION == '3') ) ) {
    ?>
    <table width="760" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr>
    <td class="smallText"><?php echo $listing_split->display_count(TEXT_DISPLAY_NUMBER_OF_PRODUCTS); ?></td>
    <td class="smallText" align="right"><?php echo TEXT_RESULT_PAGE . ' ' . $listing_split->display_links(MAX_DISPLAY_PAGE_LINKS, tep_get_all_get_params(array('page', 'info', 'x', 'y'))); ?></td>
    </tr>
    </table>
    <?php
    }

    $list_box_contents = array();
    for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
    switch ($column_list[$col]) {
    case 'PRODUCT_LIST_MODEL':
    $lc_text = TABLE_HEADING_MODEL;
    $lc_align = '';
    break;
    case 'PRODUCT_LIST_NAME':
    $lc_text = TABLE_HEADING_PRODUCTS;
    $lc_align = '';
    break;
    case 'PRODUCT_LIST_MANUFACTURER':
    $lc_text = TABLE_HEADING_MANUFACTURER;
    $lc_align = '';
    break;
    case 'PRODUCT_LIST_PRICE':
    $lc_text = TABLE_HEADING_PRICE;
    $lc_align = 'right';
    break;
    case 'PRODUCT_LIST_QUANTITY':
    $lc_text = TABLE_HEADING_QUANTITY;
    $lc_align = 'right';
    break;
    case 'PRODUCT_LIST_WEIGHT':
    $lc_text = TABLE_HEADING_WEIGHT;
    $lc_align = 'right';
    break;
    case 'PRODUCT_LIST_IMAGE':
    $lc_text = TABLE_HEADING_IMAGE;
    $lc_align = 'center';
    break;
    case 'PRODUCT_LIST_BUY_NOW':
    $lc_text = TABLE_HEADING_BUY_NOW;
    $lc_align = 'center';
    break;
    case 'PRODUCT_SORT_ORDER':
    $lc_text = TABLE_HEADING_PRODUCT_SORT;
    $lc_align = 'center';
    break;
    }

    if ( ($column_list[$col] != 'PRODUCT_LIST_BUY_NOW') && ($column_list[$col] != 'PRODUCT_LIST_IMAGE') ) {
    $lc_text = tep_create_sort_heading($HTTP_GET_VARS['sort'], $col+1, $lc_text);
    }

    $list_box_contents[0][] = array('align' => $lc_align,
    'params' => 'class="productListing-heading"',
    'text' => '&nbsp;' . $lc_text . '&nbsp;');
    }

    if ($listing_split->number_of_rows > 0) {
    $rows = 0;
    $listing_query = tep_db_query($listing_split->sql_query);
    while ($listing = tep_db_fetch_array($listing_query)) {
    $rows++;

    if (($rows/2) == floor($rows/2)) {
    $list_box_contents[] = array('params' => 'class="productListing-even"');
    } else {
    $list_box_contents[] = array('params' => 'class="productListing-odd"');
    }

    $cur_row = sizeof($list_box_contents) - 1;

    for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
    $lc_align = '';

    switch ($column_list[$col]) {
    case 'PRODUCT_LIST_MODEL':
    $lc_align = '';
    $lc_text = '&nbsp;' . $listing['products_model'] . '&nbsp;';
    break;
    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 = '&nbsp;<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a>&nbsp;';
    }
    break;
    case 'PRODUCT_LIST_MANUFACTURER':
    $lc_align = '';
    $lc_text = '&nbsp;<a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $listing['manufacturers_id']) . '">' . $listing['manufacturers_name'] . '</a>&nbsp;';
    break;
    case 'PRODUCT_LIST_PRICE':
    $lc_align = 'right';
    if (tep_not_null($listing['specials_new_products_price'])) {
    $lc_text = '&nbsp;<s>' . $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</s>&nbsp;&nbsp;<span class="productSpecialPrice">' . $currencies->display_price($listing['specials_new_products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</span>&nbsp;';
    } else {
    $lc_text = '&nbsp;' . $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '&nbsp;';
    }
    break;
    case 'PRODUCT_LIST_QUANTITY':
    $lc_align = 'right';
    $lc_text = '&nbsp;' . $listing['products_quantity'] . '&nbsp;';
    break;
    case 'PRODUCT_LIST_WEIGHT':
    $lc_align = 'right';
    $lc_text = '&nbsp;' . $listing['products_weight'] . '&nbsp;';
    break;
    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 = '&nbsp;<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>&nbsp;';
    }
    break;
    case 'PRODUCT_LIST_BUY_NOW':
    $lc_align = 'center';
    $lc_text = '<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $listing['products_id']) . '">' . tep_image_button('button_buy_now.gif', IMAGE_BUTTON_BUY_NOW) . '</a>&nbsp;';
    break;
    case 'PRODUCT_SORT_ORDER';
    $lc_align = 'center';
    $lc_text = '&nbsp;' . $listing['products_sort_order'] . '&nbsp;';
    break;

    }
    $product_contents[] = $lc_text;

    }
    $lc_text = implode('<br>', $product_contents);
    $list_box_contents[$row][$column] = array('align' => 'center',
    'params' => 'class="productListing-data" width="33%" valign="top"',
    'text' => $lc_text);
    $column ++;
    if ($column >= 3) {
    $row ++;
    $column = 0;
    }
    }

    new productListingBox($list_box_contents);
    } else {
    $list_box_contents = array();

    $list_box_contents[0] = array('params' => 'class="productListing-odd"');
    $list_box_contents[0][] = array('params' => 'class="productListing-data"',
    'text' => TEXT_NO_PRODUCTS);

    new productListingBox($list_box_contents);
    }

    if ( ($listing_split->number_of_rows > 0) && ((PREV_NEXT_BAR_LOCATION == '2') || (PREV_NEXT_BAR_LOCATION == '3')) ) {
    ?>
    <table border="0" width="100%" cellspacing="0" cellpadding="2">
    <tr>
    <td class="smallText"><?php echo $listing_split->display_count(TEXT_DISPLAY_NUMBER_OF_PRODUCTS); ?></td>
    <td class="smallText" align="right"><?php echo TEXT_RESULT_PAGE . ' ' . $listing_split->display_links(MAX_DISPLAY_PAGE_LINKS, tep_get_all_get_params(array('page', 'info', 'x', 'y'))); ?></td>
    </tr>
    </table>
    <?php
    }
    ?>

  • #2
    Erst lesen dann posten!

    Kommentar


    • #3
      ich glaub der hund liegt hier begraben:

      $column ++;
      if ($column >= 3) {
      $row ++;
      $column = 0;

      probier doch mal was er tut wenn du auf

      if ($column >= 1) {

      änderst.

      Kommentar


      • #4
        OffTopic:
        ich glaub der hund liegt hier begraben:
        Ich will doch nicht hoffen! *trauert um den Hund*

        Kommentar

        Lädt...
        X