Проблема с выводом данных из mysql на сайт.

Тема в разделе "Базы данных", создана пользователем Cribble, 6 июн 2008.

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

    Cribble Постоялец

    Регистр.:
    25 июл 2006
    Сообщения:
    104
    Симпатии:
    40
    Весь текст на сайт из базы выводится в виде ??????
    При этом когда саму БД смотришь через phpmyadmin всё ok.
    В чем может быть проблема?:bc: как лечить? БД очень очень жалко сносить :(
     
  2. sigmenta

    sigmenta Постоялец

    Заблокирован
    Регистр.:
    5 апр 2008
    Сообщения:
    97
    Симпатии:
    8
    Видать когда ты импортировал базу ты невыставил правильные кодировки при заливке. Лучший вариант, заливать или зная кодировку, или через SQL окно, тупо скопировав базу в буфер обмена. Я так делаю.!
     
  3. masto

    masto Прохожие

    используй set names при подключении к базе.
     
  4. Cribble

    Cribble Постоялец

    Регистр.:
    25 июл 2006
    Сообщения:
    104
    Симпатии:
    40
    Базу заливал скриптом
    Перейти по ссылке
    он сам выставил кодировку cp-1251, им же и делался дамп с бд.

    Перейти по ссылке, уже читал об этом варианте, но он не рекомендован к использованию разработчиками mysql. М.б. есть другие возможности? Что-то с БД может сдеать?

    Может ли версия mysql влиять на это дело? сейчас стоит 5.0.24a.
    А сливалось с 4.
     
  5. masto

    masto Прохожие

    первый раз слышу чтоб он был не рекомендован.
    у тебя явное несоответствие кодировки.
    с какой именно?
    4.0 или 4.1 и старше?
     
  6. Cribble

    Cribble Постоялец

    Регистр.:
    25 июл 2006
    Сообщения:
    104
    Симпатии:
    40
    с 4.0 именно
     
  7. masto

    masto Прохожие

    начиная с 4.1 в мускуле изменилось внутреннее хранилище данных.
    используй set names или правь mysql.conf на предмет дефолтных кодировок, если есть возможность.
     
  8. Cribble

    Cribble Постоялец

    Регистр.:
    25 июл 2006
    Сообщения:
    104
    Симпатии:
    40
    Есть возможность править. Пошел лазить...

    Сейчас так:
    Код:
    default-character-set = utf8
    character-set-server = utf8
    collation-server = utf8_general_ci
    init_connect = 'SET collation_connection = utf8_general_ci'
    init_connect = 'SET NAMES utf8'
    Сделать так (Верно понимаю?).
    Код:
    default-character-set = win-1251
     character-set-server = win-1251
     collation-server = win-1251_general_ci
     init_connect = 'SET collation_connection = win-1251_general_ci'
     init_connect = 'SET NAMES win-1251'
    А есть возможность поправить саму БД? Чтобы на версиях младше 4.1 всё ok было? В php код не лазить дабы.
     
  9. Lingod

    Lingod Писатель

    Регистр.:
    3 июн 2008
    Сообщения:
    5
    Симпатии:
    2
    сам сталкивался с проблемой с выводом текста
    решил так.
    после поключения encfyjdb свою кодировку
    mysql_query("SET NAMES cp1251");
     
  10. x-free

    x-free Писатель

    Регистр.:
    11 мар 2009
    Сообщения:
    6
    Симпатии:
    0
    Таблица или база в одной кодировки а данные забиты в другой, не соответствуют в общем
     
Статус темы:
Закрыта.