помогите с динамической страницой интернет магазина

#
помогите с динамической страницой интернет магазина
После обновления возникла проблема с отображением товаров. выводится только один товар, вместо полного списка. Все категории выводятся нормально, проблема только с выводом товаров. скорее всего проблема в типовой динамической странице интернет магазина. Кто может подсказать что там надо изменить что бы всё заработало. ниже привожу текст динамической страницы. Буду очень благодарен за помощь.


<?
global $count_condition, $external_propertys, $extprop;
$count_condition = 0;
$extprop = 'false';
$xsl_catalog = to_str($GLOBALS['LA']['xsl_catalog']);
$xsl_item = to_str($GLOBALS['LA']['xsl_item']);
$current_shop_id = to_int($GLOBALS['LA']['shop_id']);
$external_propertys = array();
$param = array();
include "lib/lib_shop2/lib_shop2.php";
function get_parent_id($group_id, $shop_id)
{
   $shop = new shop();
   $groups = $shop->getAllGroups($shop_id);
   for ($i = 0; $i < count($groups); $i++)
   {
      if($groups[$i]['shop_groups_id'] == $group_id)
      {
         return $groups[$i]['shop_groups_parent_id'];
      }
   }
   return 0;
}

function set_filt($filt_name,$filt_id,$filt_type)
{
   global $count_condition, $external_propertys, $extprop;
   if (to_float($_GET[$filt_name]) > 0)
   {
      $extprop .= ' OR (shop_properties_items_table.shop_list_of_properties_id ='.$filt_id;
      $extprop .= ' AND CONVERT(shop_properties_items_table.shop_properties_items_value, UNSIGNED)'.$filt_type.to_float($_GET[$filt_name]);
      $extprop .= '';
      ++$count_condition;
      $external_propertys[$filt_name] = to_float($_GET[$filt_name]);
   }
}

function set_filt2($filt_name,$filt_id)
{
   global $count_condition, $external_propertys, $extprop;
   if (to_float($_GET[$filt_name]) > 0)
   {
      $extprop .= ' OR (shop_properties_items_table.shop_list_of_properties_id ='.$filt_id;
      switch ($_GET[$filt_name])
      {
         case 1:
         {
            $extprop .= ' AND CONVERT(shop_properties_items_table.shop_properties_items_value, UNSIGNED)<=60';
            break;
         }
         case 2:
         {
            $extprop .= ' AND CONVERT(shop_properties_items_table.shop_properties_items_value, UNSIGNED)>60';
            $extprop .= ' AND CONVERT(shop_properties_items_table.shop_properties_items_value, UNSIGNED)<=80';
            break;
         }
         case 3:
         {
            $extprop .= ' AND CONVERT(shop_properties_items_table.shop_properties_items_value, UNSIGNED)>80';
            $extprop .= ' AND CONVERT(shop_properties_items_table.shop_properties_items_value, UNSIGNED)<=100';
            break;
         }
         case 4:
         {
            $extprop .= ' AND CONVERT(shop_properties_items_table.shop_properties_items_value, UNSIGNED)>100';
            $extprop .= ' AND CONVERT(shop_properties_items_table.shop_properties_items_value, UNSIGNED)<=120';
            break;
         }
         case 5:
         {
            $extprop .= ' AND CONVERT(shop_properties_items_table.shop_properties_items_value, UNSIGNED)>120';
            break;
         }
      }
      $extprop .= '';
      ++$count_condition;
      $external_propertys[$filt_name] = to_float($_GET[$filt_name]);
   }
}

if($GLOBALS['shop_item_path'] != false)
{
/*Получаем id текущего пользователя сайта*/
   if (class_exists("SiteUsers")
   {
      /* Получаем id текущего пользователя сайта */
      $SiteUsers = & singleton('SiteUsers';
      $param['user_id'] = $SiteUsers->GetCurrentSiteUser();
   }

/* Вывод списка товаров*/
   if(!$GLOBALS['shop_item_path']['item'])
   {
/*Если находимся в группе, то выводим товар ее подгрупп, иначе выводим товар подгруппы*/
      $cgid =$GLOBALS['shop_item_path']['group'];
      
      $parent_group_id = 0;
      if(($cgid != 6)and($cgid != 22)and($cgid != 15)and($cgid != 52)and($cgid != 46)and($cgid != 43)and($cgid != 24)and($cgid != 180)and($cgid != 229)and($cgid != 314))
      {
         $param['current_group_id'] = $cgid;
         $external_propertys['current_group_id'] = $cgid;
         $parent_group_id = get_parent_id($cgid,$current_shop_id);
      }
      else
      {

         $param['current_group_id'] = false;
         $external_propertys['current_group_id'] = $cgid;
         $element['type'] = 0;
         $element['prefix'] = ' and ';
         $element['name'] = 'shop_items_catalog_table.shop_shops_id';
         $element['if'] = ' = ';
         $element['value'] = $current_shop_id;
         $parent_group_id = $cgid;

         $shop = new shop();
         $subgroups=$shop->GetGroupsTree($cgid,$current_shop_id);

         $avail_prop = $shop->GetPropertiesOfGroup($cgid);

         $element['sufix']  = " AND (false";
         for ($i=0; $i<count($subgroups[$cgid]); $i++)
         {
            if ($subgroups[$cgid][$i]['shop_groups_id']!=141){
            $element['sufix'] .= " OR (shop_items_catalog_table.shop_groups_id =";
            $element['sufix'] .= $subgroups[$cgid][$i]['shop_groups_id'];
            $element['sufix'] .= "";
            }
         }
         $element['sufix'] .= "";
         
         $param['select'][] = $element;
      }
/*Определяем номер элемента, с которого начинается показ в текущей группе*/
      $page = end($GLOBALS['URL_ARRAY']);
      $page = to_str($page);

      $shop_row = $GLOBALS['shops']->GetShop($current_shop_id);
      if ($shop_row)
      {
         $items_on_page = $shop_row['shop_items_on_page'];
      }
      else
      {
         $items_on_page = 10;
      }
/*Ограничиваем по производителю*/
      if (to_int($_GET['producer_id']) > 0)
      {
         $element['type'] = 0;
         $element['name'] = 'shop_producers_list_id';
                        $element['property_id'] = '';
         $element['prefix'] = 'AND';
         $element['if'] = '=';
         $element['value'] = to_int($_GET['producer_id']);
         $element['sufix'] = '';
         $param['select'][] = $element;
         $external_propertys['producer_id'] = to_int($_GET['producer_id']);
         $external_propertys['apply_filter'] = true;
      }
/*Ограничиваем по продавцу*/
      if (to_int($_GET['saller_id']) > 0)
      {
         $element['type'] = 0;
         $element['name'] = 'shop_sallers_id';
                        $element['property_id'] = '';
         $element['prefix'] = 'AND';
         $element['if'] = '=';
         $element['value'] = to_int($_GET['saller_id']);
         $element['sufix'] = '';
         $param['select'][] = $element;
         $external_propertys['saller_id'] = to_int($_GET['saller_id']);
         $external_propertys['apply_filter'] = true;
      }
/*Ограничиваем по цене ОТ*/
      if (to_float($_GET['price_from']) > 0)
      {
         $element['type'] = 0;
         $element['name'] = 'shop_items_catalog_price';
                        $element['property_id'] = '';
         $element['prefix'] = 'AND';
         $element['if'] = '>';
         $element['value'] = to_float($_GET['price_from']);
         $element['sufix'] = '';
         $param['select'][] = $element;
         $external_propertys['price_from'] = to_float($_GET['price_from']);
         $external_propertys['apply_filter'] = true;
      }
/*Ограничиваем по цене ДО*/
      if (to_float($_GET['price_to']) > 0)
      {
         $element['type'] = 0;
         $element['name'] = 'shop_items_catalog_price';
                        $element['property_id'] = '';
         $element['prefix'] = 'AND(';
         $element['if'] = '<';
         $element['value'] = to_float($_GET['price_to']);
         $element['sufix'] = '';
         $param['select'][] = $element;
         $external_propertys['price_to'] = to_float($_GET['price_to']);
         $external_propertys['apply_filter'] = true;
      }

/*Фильтры по дополнительным свойствам товара*/

/*Ограничиваем по длине ДО*/
      set_filt('length',2,'<=';
/*Ограничиваем по длине ДО*/
      set_filt('length3',2,'=';
/*Ограничиваем по ширине ДО*/
      set_filt('width',3,'<=';
/*Ограничиваем по ширине*/
      set_filt2('length2',2);
/*Ограничиваем по длине излива*/
      set_filt('filt_izliv',13,'=';
/*Ограничиваем по типу двухвентельный/однорычажный*/
      set_filt('filt_vent',17,'=';
/*Ограничиваем по типу Встроенный/Наружный монтаж*/
      set_filt('filt_inoutmontag',18,'=';
/*Ограничиваем по типу вертикальный/напольный монтаж */
      set_filt('filt_vnmontag',19,'=';
/*Ограничиваем по типу с гигееническим душем */
      set_filt('filt_dush',20,'=';
/*Ограничиваем по типу сенсорные */
      set_filt('filt_sensor',23,'=';

/*вставка ограничений по дополнительным свойствам*/
      if ($count_condition>0)
      {
         $element['type'] = 0;
         $element['prefix'] = ' and ';
         $element['name'] = 'shop_items_catalog_table.shop_shops_id';
         $element['if'] = ' = ';
         $element['value'] = $current_shop_id;
         $element['sufix' ] = ' AND ('.$extprop.'';
         $param['select'][] = $element;
         $external_propertys['apply_filter'] = true;
      }
/*Группировка для доп свойств*/
      $having_count = ' GROUP BY shop_items_catalog_table.shop_items_catalog_item_id';
      if ($count_condition >1)
      {
         $shop = new shop();
         $count_shop_prop = $shop->GetCountProperties($current_shop_id);
         $having_count .= ' HAVING COUNT(shop_items_catalog_table.shop_items_catalog_item_id) = '. $count_condition;
      }
/*вставка группировки для работы фильтров по  дополнительным сойствам*/
      $element['type'] = 0;
      $element['prefix'] = 'AND (';
      $element['name'] = '';
      $element['if'] = '';
      $element['value'] = '';
      $element['sufix' ] = '';
      $param['select'][] = $element;

      $element['type'] = 0;
      $element['prefix'] = ' 1 ';
      $element['name'] = '';
      $element['if'] = '';
      $element['value'] = '';
      $element['sufix'] = $having_count;
      $param['select'][] = $element;

/*Число элементов на странице */
      $on_page = to_int($_GET['on_page']);
      if ($on_page > 0 && $on_page < 150)
      {
         $param['items_on_page'] = $on_page;
         $external_propertys['on_page'] = $on_page;
         $external_propertys['apply_filter'] = true;
      }
/*Определяем номер страницы.*/
      if ($on_page)
      {
         $items_on_page = $on_page;
      }
      if (ereg("^page-([0-9]*)$", $page, $regs) && to_int($regs[1]) > 1)
      {
/*Страница умножается на кол-во элементов, выводимых на страницу*/
         $items_begin = ($regs[1] - 1) * $items_on_page;
      }
      else
      {
         $items_begin = 0;
      }
      $param['items_begin'] = $items_begin;
/*Направление сортировки*/
      $order_direction = to_int($_GET['order_direction']);
      switch ($order_direction)
      {
         case 1: /* По-возрастанию */
         {
            $order_direction = 'ASC';
            break;
         }
         case 2: /* По-убыванию */
         {
            $order_direction = 'DESC';
            break;
         }
         default: /* По-умолчанию */
         {
            $order_direction = 'ASC';
            break;
         }
      }
/* Поле сортировки */
      $sort_field = to_int($_GET['sort_by_field']);
      switch ($sort_field)
      {
         case 1: /* По имени */
         {
            $param['items_field_order'] = 'shop_items_catalog_name';
            $param['items_order'] = $order_direction;
            $external_propertys['sort_by_field'] = $sort_field;
            $external_propertys['order_direction'] = $order_direction;
            break;
         }
         case 2: /* По цене */
         {
            $param['items_field_order'] = 'shop_items_catalog_price';
            $param['items_order'] = $order_direction;
            $external_propertys['sort_by_field'] = $sort_field;
            $external_propertys['order_direction'] = $order_direction;
            break;
         }
         default :/* По-умолчанию: По цене */
         {
            $param['items_field_order'] = 'shop_items_catalog_name';
            $param['items_order'] = $order_direction;
            $external_propertys['sort_by_field'] = 1;
            $external_propertys['order_direction'] = $order_direction;
            break;
         }
      }

/* Вставка гидромассажа*/
      if ((($cgid >= 39)AND($cgid <= 42))or($cgid==22))
      {
         $shop = new shop();
         $external_propertys['price_hydro'] = $shop->GetItem(1018);
         $currency = $shop->GetCurrency(14);
         $external_propertys['euro']=$currency['shop_currency_value_in_basic_currency'];
      }
/*добавление id родительской группы*/
      $external_propertys['parent_group_id'] = $parent_group_id;

/*добавление id производителей для данной группы*/
      $shop2 = new shop2();
      $external_propertys['producers']=$shop2->getProducers($cgid);

/*добавляем все длины*/
      $shop2 = new shop2();
      $external_propertys['lengths']=$shop2->getProperties($cgid,2);

/*режим снижения количесва запросов*/
      $param['dec_reques_number'] = true;
/*вывод магазина*/
      $GLOBALS['shops']->ShowShop($current_shop_id, $xsl_catalog, $param, $external_propertys);
   }
/* Вывод конкретного элемента*/
   else
   {
      $cgid = $GLOBALS['shop_item_path']['group'];
      $param['current_group_id'] = $cgid;

      if (($cgid >= 39)AND($cgid <= 42))
      {
         $shop2 = new shop2();
         $shop = new shop();
         $external_propertys['hidros'] = $shop2->getItems(22);
         $external_propertys['price_hydro'] = $external_propertys['hidros']['hidro1018']['hidro']['price'];
         $currency = $shop->GetCurrency(14);
         $external_propertys['euro']=$currency['shop_currency_value_in_basic_currency'];
      }

//Звездень

      $GLOBALS['shops']->ShowItem($GLOBALS['shop_item_path']['item'], $xsl_item, $param, $external_propertys);
   }
}
?>
#
Re: помогите с динамической страницой интернет магазина
проблему решил. помощь больше не требуется)
#
Re: помогите с динамической страницой интернет магазина
Как решил?
У меня тоже товары только до второго отображаются и все. Даже нет нет ссылки на HostCSM.
Авторизация