За последние 24 часа нас посетили 61175 программистов и 1779 роботов. Сейчас ищут 793 программиста ...

Кусочек кода, подскажите что поправить

Тема в разделе "PHP для новичков", создана пользователем Volonter, 2 янв 2010.

  1. Volonter

    Volonter Активный пользователь

    С нами с:
    8 авг 2009
    Сообщения:
    68
    Симпатии:
    0
    Адрес:
    Москва
    Всем доброго новогоднего настроения ! Подскажите, что нужно поправить в коде чтобы работало нормально.
    Ситуация такая, значит. Есть каталог, в нем расширенный поиск. В расширенном поиске есть поиск по полю "Цена ОТ" и "Цена ДО". Вот этот код определяет, какие позиции выводить, если пользователь назначил цену от\до

    PHP:
    1.  
    2.                         $MinPrice = JRequest::getVar('Price2', '0', 'REQUEST', 'INT');
    3.             $MaxPrice = JRequest::getVar('Price', '0', 'REQUEST', 'INT');
    4.             if ($MaxPrice!=0) {
    5.                 $items = array();
    6.                 foreach ( $sIDs as $ThisID ) {
    7.                     $query = "SELECT DISTINCT convert(sdata.data_txt,unsigned) as data_txt " .
    8.                     "FROM `#__sobi2_fields_data` AS sdata " .
    9.                     "WHERE sdata.itemid = '$ThisID' AND sdata.fieldid={$PriceFieldID}";
    10.                     $database->setQuery( $query );
    11.                     if ($database->loadResult() && $database->loadResult() >= $MinPrice && $database->loadResult() <= $MaxPrice) $items[] = $ThisID;
    12.                 }
    13.                 $sIDs = $items;
    14.                 unset($items);
    15.             }
    16.  
    Все работает, но ! Если пользователь в поле "Цена ОТ"($MinPrice) задал цену, бОльшую чем самая максимальная цена которая есть в каталоге, то поиск выкидывает все позиции, даже те которые меньше по цене, чем заданная юзером.
    Подозреваю, что чтото надо поправить вот в этой строчке кода
    PHP:
    1.  
    2. if ($database->loadResult() && $database->loadResult() >= $MinPrice && $database->loadResult() <= $MaxPrice) $items[] = $ThisID;
    3.  
    А вот что поправить - никак не соображу. Или может быть есть какое то другое решение?
    Подскажите пожалуйста.
    Спасибо!