За последние 24 часа нас посетили 17508 программистов и 1727 роботов. Сейчас ищут 995 программистов ...

Вывод данных из базы по алфавитному указателю

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

  1. timur77

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

    С нами с:
    12 фев 2008
    Сообщения:
    4
    Симпатии:
    0
    Здравствуйте. Не могли бы вы мне помочь. Я не могу вывести данные из БД по алфавитному указателю. У меня база лекарственных препаратов. Чтобы при выборе определенной буквы АБВГ данные отображались по алфавиту. Помогите пожалуйста. Заранее благодарю.
     
  2. antonn

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

    С нами с:
    10 июн 2007
    Сообщения:
    2.996
    Симпатии:
    0
    ну и добавь в запрос что то подобное:
    PHP:
    1. $alf='A';
    2. "WHERE LOWER(имя столбца) LIKE ".quote_real_escape_string($alf)."%"
     
  3. timur77

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

    С нами с:
    12 фев 2008
    Сообщения:
    4
    Симпатии:
    0
    Дело в том что мне нужно чтобы на сайте выводились все буквы в алфавитном порядке и при клике на определенную букву выводились наименования лекарств. У меня одна таблица medicine {id, name, description}. Одним php файлом можно сделать этот модуль, вот как например на сайте http://www.xumuk.ru/lekenc/a.html
     
  4. Professor

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

    С нами с:
    2 янв 2008
    Сообщения:
    121
    Симпатии:
    0
    Адрес:
    г. Одесса, Украина
    Чем не устраивает ORDER BY?
     
  5. timur77

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

    С нами с:
    12 фев 2008
    Сообщения:
    4
    Симпатии:
    0
    Мне нужна сортировка по алфавитному указателю, а не просто сортировка, те при нажатии букв АБВ
     
  6. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    мож тебе нужна выборка по первой букве?
     
  7. Ambrella

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

    С нами с:
    10 ноя 2007
    Сообщения:
    206
    Симпатии:
    0
    Попробуй так:

    $sign = "А";
    $sql = "SELECT * FROM `table` WHERE `name` LIKE `$sign%`ORDER BY `name` ASC"

    Гдето так...
     
  8. Professor

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

    С нами с:
    2 янв 2008
    Сообщения:
    121
    Симпатии:
    0
    Адрес:
    г. Одесса, Украина
    вот вот, я это и имел в виду.
     
  9. timur77

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

    С нами с:
    12 фев 2008
    Сообщения:
    4
    Симпатии:
    0
    Ambrella
    Здравствуйте. Теперь для каждой буквы мне придется писать такой запрос
    $sign = "А";
    $sql = "SELECT * FROM `table` WHERE `name` LIKE `$sign%`ORDER BY `name` ASC" ? Нельзя ли через PHP как-нибудь?
     
  10. lexa

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

    С нами с:
    22 июл 2007
    Сообщения:
    1.746
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    [sql]select * from `table` where lower(left(`name`, 1)) = 'б' order by `name` asc[/sql]
     
  11. Ambrella

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

    С нами с:
    10 ноя 2007
    Сообщения:
    206
    Симпатии:
    0
    timur77
    Для каждой буквы вам стоит поместить в переменную необходимую букву...
    ./page.php?sign=A
    ./page.php?sign=Б
    ./page.php?sign=В