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

Помощь с сортировкой данных

Тема в разделе "PHP и базы данных", создана пользователем Dimitry_LD, 25 мар 2011.

  1. Dimitry_LD

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

    С нами с:
    13 янв 2011
    Сообщения:
    60
    Симпатии:
    0
    Адрес:
    GH
    ТЕМА ЗАКРЫТА!
     
  2. Shumomer

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

    С нами с:
    12 мар 2011
    Сообщения:
    194
    Симпатии:
    1
    Адрес:
    из вашего вображения
    Или переводить все в утф8 или менять кодировку самого мускуля (mysql.ini или my.cnf в зависимости от оперционки) на 1251
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Dimitry_LD
    на дворе 2011 год уже.
     
  4. Dimitry_LD

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

    С нами с:
    13 янв 2011
    Сообщения:
    60
    Симпатии:
    0
    Адрес:
    GH
    И к чему это? Что это значит??
     
  5. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Не знаете Вы. Люди - знают. Просто не понимают Вашей проблемы из-за неосведомленности или не хотят понимать.
     
  6. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Что-то у меня подозрение, что там третий вложенный цикл с запросом.
     
  7. Dimitry_LD

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

    С нами с:
    13 янв 2011
    Сообщения:
    60
    Симпатии:
    0
    Адрес:
    GH
    Т.е.?
    Можно по конкретнее, в чём проблема то??
     
  8. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Проблема в том, что не нам понятно в чем у Вас проблема. Потому что её может и не быть, на самом деле.

    Чтобы объяснить Вам, в чем может быть проблема, нам нужно знать:
    1) Как Вы определяете (на каком этапе), что сортировка неверная. Сделайте вывод print_r($forms) первой строкой в цикле.
    2) Кодировку таблицы, полей, базы. Для указания кодировки соединения достаточно указать SET NAMES 'cp1251'
    3) Структуру таблицы, с отображением нескольких полей с данными
     
  9. Dimitry_LD

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

    С нами с:
    13 янв 2011
    Сообщения:
    60
    Симпатии:
    0
    Адрес:
    GH
    ТЕМА ЗАКРЫТА!
     
  10. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    А ничего, что переменная затирается в циле?
     
  11. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    к тому что не смысла пользоваться кодировками двадцатилетней давности.

    Перейдя на utf8 забудешь все проблемы.
     
  12. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    ... Сын мой.
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    да будет так
     
  14. Gromo

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

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    Аминь
     
  15. Dimitry_LD

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

    С нами с:
    13 янв 2011
    Сообщения:
    60
    Симпатии:
    0
    Адрес:
    GH
    Ахахаха) Спасибо за молитву, конечно, но я уже перешёл на utf8 по вашему совету и та же проблема, как и 1251!((

    Эмм..что это значит? Что то не так записано??
     
  16. Gromo

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

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    Dimitry_LD
    ужасный код, просто ужасный. но разобраться можно :)

    можно попробовать переделать первый запрос (который и является главным при сортироке):

    $ath = mysql_query("SELECT forms_glav.* FROM forms_glav LEFT JOIN forms USING(`id_form`) ORDER BY forms.`naimenov`");

    а в остальных запросах сортировка уже не нужна.
     
  17. Dimitry_LD

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

    С нами с:
    13 янв 2011
    Сообщения:
    60
    Симпатии:
    0
    Адрес:
    GH
    Хмм, спасибо, конечно за критику, но почему же ужасный? :)

    И, в очередной раз спасибо за строку запроса! Приятно иметь дело с профессионалами :)
    Только сегодня в универе контрольная была, писали похожие запросы, так что удалось как то разобраться что к чему)
     
  18. Gromo

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

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    да это я всегда так :) не обращай внимания.

    код читабельный - это главное. неудобно было с форматированием - неровное оно какое-то (хотя я тоже иногда этим грешу).пришлось немного доводить до нормального форматирования, после чего код уже можно было разбирать.

    запросы в мускул внутри циклов, разбирающие другие запросы - вот что ужасно - их слишком много. уж легче сделать джоинами, и добиться того же результата где-то 2 запросами. или возможно даже одним, но большим.
     
  19. Dimitry_LD

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

    С нами с:
    13 янв 2011
    Сообщения:
    60
    Симпатии:
    0
    Адрес:
    GH
    ТЕМА ЗАКРЫТА!
     
  20. MiksIr

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

    С нами с:
    29 ноя 2006
    Сообщения:
    2.339
    Симпатии:
    44
    Покажите вывод show create table forms;
     
  21. Dimitry_LD

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

    С нами с:
    13 янв 2011
    Сообщения:
    60
    Симпатии:
    0
    Адрес:
    GH
    Т.е. где идёт выборка и присваиваются значения для дальнейшего вывода на экран?? Это?
     
  22. MiksIr

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

    С нами с:
    29 ноя 2006
    Сообщения:
    2.339
    Симпатии:
    44
    Войдите в mysql консоль или откройте выполнение sql кода в phpmyadmin-е и наберите там show create table forms.
     
  23. Dimitry_LD

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

    С нами с:
    13 янв 2011
    Сообщения:
    60
    Симпатии:
    0
    Адрес:
    GH
    Forms:

    CREATE TABLE `forms` (
    `id_form` int(255) NOT NULL AUTO_INCREMENT,
    `naimenov` varchar(255) NOT NULL,
    PRIMARY KEY (`id_form`)
    ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC
     
  24. Dimitry_LD

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

    С нами с:
    13 янв 2011
    Сообщения:
    60
    Симпатии:
    0
    Адрес:
    GH
    А почему именно forms ??
     
  25. MiksIr

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

    С нами с:
    29 ноя 2006
    Сообщения:
    2.339
    Симпатии:
    44
    Ну вы же по forms сортировку делаете.
    И какие косяки с сортировкой? Покажите вывод SELECT * FROM forms ORDER BY naimenov ASC;
    Лучше из консоли так же запустите.