За последние 24 часа нас посетили 18189 программистов и 1606 роботов. Сейчас ищут 934 программиста ...

Сортировка с базы.

Тема в разделе "PHP для новичков", создана пользователем AviOn, 23 апр 2008.

  1. AviOn

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

    С нами с:
    16 июл 2007
    Сообщения:
    171
    Симпатии:
    0
    Адрес:
    Кировоград, Украина
    Здраствуйте "знающие".

    Есть такая задача отсортировать товар по цене (примерно 200 строк).

    Использую код (для наглядности):
    PHP:
    1. mysql_query("SELECT * FROM `groups` LEFT JOIN `products` ON (`products`.`gID`=`groups`.`id` AND `products`.`nal`='1') WHERE `cid`='$_GET[cid]' ORDER BY `products`.`new` DESC, `products`.`price` $sort_now LIMIT 0, $per_page");
    Где
    Код (Text):
    1. $sort_now
    набирает значений "ASC" или "DESC" в зависимости от выбора.

    Но проблема в том что не коретная работа, при значении "ASC" выводяться значала числа 1234 по возрастанию, например, а потом - 654 и тоже по возрастанию.

    Или я чёто не доганяю, или чё-то не правильно написал. Подскажите.
     
  2. creage

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

    С нами с:
    12 мар 2008
    Сообщения:
    131
    Симпатии:
    0
    Адрес:
    Киев
    тип поля price какой?)
     
  3. armadillo

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

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    ну так сначала сортировка идет по продуктам.
     
  4. AviOn

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

    С нами с:
    16 июл 2007
    Сообщения:
    171
    Симпатии:
    0
    Адрес:
    Кировоград, Украина
    Всё, ребята, извините ТУПОНУЛ. Базу не просмотрел полностью - не моя просто.

    creage спасибо - поле типа VARCHAR, поменял на INT - нормально...
     
  5. creage

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

    С нами с:
    12 мар 2008
    Сообщения:
    131
    Симпатии:
    0
    Адрес:
    Киев
    имхо инт в данном случае не очень корректен. что вы будете делать с ценой в 25 руб. 56 коп? Можно, по идее, хранить в базе числа, умноженные на 100 - это решит проблему с запятой, но выбор за вами...