1. Задавайте здесь вопросы о коде, которые не подходят в другие разделы, такие как:
    Дизайн > Верстка
    PHP > Как сделать на PHP
    Скрыть объявление

Помогите слить 2 выпадающих меню.

Тема в разделе "Web Coding", создана пользователем cbone, 6 фев 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. cbone

    cbone Создатель

    Регистр.:
    25 ноя 2007
    Сообщения:
    28
    Симпатии:
    5
    В общем тема такая: У меня есть компонент для Joomla EZRealty(для сайта недвижимости). В нем есть расширенный поиск(нас интересует стоимость недвижимости), но проблема заключается в том, что стоимость задается интервалом, и минимальное значение выбирается в первом выпадающем меню, а максимальное-во втором. Пример на http://crimeastar.info/ в поиске справа. А мне нужно склеить эти поля и чтоб в одном поле выбирался интервал цен, пример на http://sdam74.ru/

    Вот само поле, в котором мы выбираем минимальное значение:
    # Build Min Price select list

    $sql = "SELECT range as value, range as text FROM #__ezrealty_price WHERE published=1 ORDER by ordering";
    $database->setQuery($sql);
    if (!$database->query()) {
    echo $database->stderr();
    return;
    }

    $minpriceit[] = mosHTML::makeOption( '', _EZREALTY_SEARCH_MINPRI );
    $minpriceit = array_merge( $minpriceit, $database->loadObjectList() );
    $lists['minprice'] = mosHTML::selectList( $minpriceit, 'minprice', 'class="inputbox" size="1"','value', 'text', '');

    Так вот выводится результат поиска:

    if($minprice){ $where[] =" a.price>=".$minprice; }
    if($maxprice){$where[] =" a.price<=".$maxprice;}

    Так как мне нужен разбег в 200 рублей, я делаю вот это перед вычислением результата поиска:

    $maxprice=$minprice+200;

    Вроде все нормально начинает работать, но в поле, в котором мы выбираем значение пишется только минимальное значение, а не интервал. А мне нужен промежуток значений(как на http://sdam74.ru). Помогите пожалуйста.
     
  2. mentanos

    mentanos Постоялец

    Регистр.:
    27 дек 2007
    Сообщения:
    128
    Симпатии:
    35
    замени sql запрос на:

    $sql = "SELECT range as value, concat(range,'-',range+200) as text FROM #__ezrealty_price WHERE published=1 ORDER by ordering";
     
    Beloslav и cbone нравится это.
  3. cbone

    cbone Создатель

    Регистр.:
    25 ноя 2007
    Сообщения:
    28
    Симпатии:
    5
    Заработало!
    :yahoo::yahoo::yahoo:

    Но появилась немного другая проблема. Теперь у левого значения написаны копейки, а у правого нет. Как их вообще убрать, может кто знает?
    Вот как оно выглядит: http://akvilonus.ru/index.php?option=com_ezrealty&Itemid=34&task=search
     
Статус темы:
Закрыта.