Проблемы с кодировкой в XAMPP

  • Автор темы I AM
  • Обновлено
  • 24, Jan 2010
  • #1
Здравствуйте! На днях решил установить xampp на локальный компьютер, и заметил такую проблему.

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

I AM


Рег
23 Jul, 2011

Тем
403760

Постов
400028

Баллов
2418908
  • 02, Feb 2010
  • #2
Сопоставление верное? Пропись через .htaccess пробовали? В выдаваемых страничках определены кодировки? Не знаю, все что можно сходу придумать.
 

I AM


Рег
23 Jul, 2011

Тем
403760

Постов
400028

Баллов
2418908
  • 21, Feb 2010
  • #3
Надо там через PHPmyadmin потыкать. И причем не только измнять сопоставление каждого столбца, а еще найти кнопку изменения сопоставления всей таблицы у меня ситуация вообще противоположная - в базе хранятся кракозябры, а выдает все правильно
 

I AM


Рег
23 Jul, 2011

Тем
403760

Постов
400028

Баллов
2418908
  • 11, Mar 2010
  • #4
Бывают проблемы с данной кодировкой. Нужно всё в базе данных перевести в Unicode. Должно помочь.
 

I AM


Рег
23 Jul, 2011

Тем
403760

Постов
400028

Баллов
2418908
  • 14, Mar 2010
  • #5
пхпМА часто выделывал пируэты с сопоставлением. Так например один сайтик на модекс с блеском проработал полтора года, свято уверенный в своей принадлежности к норвежскому, хотя сама база была в utf, а сопоставление в latin. Грех было разбираться, тем более модекс определил автоматом.
 

I AM


Рег
23 Jul, 2011

Тем
403760

Постов
400028

Баллов
2418908
  • 27, Mar 2010
  • #6
Я пробовал ставить кодировку базы windows-1251, а в пхп файле вписывал строку SET NAMES cp1251, только тогда все отображалось правильно, но без этой строки опять проблемы с кодировкой начинаются.

не хотелось бы каждый раз прописывать эту строку.

допустим в денвере и без все работает нормально

цитата с википедии:

Проблемы:

* Необходима настройка MySql для корректной работы с кодировкой Windows-1251

Решение проблемы:

* в настройках MySQL в файле my.ini или my.cnf в секцию [mysqld] добавить строчку init_connect='SET NAMES cp1251'

* Если нет административных прав на сервер MySQL: при каждом обращении к базе выполнить SET NAMES cp1251

Узнать текущее значение переменной сервера можно выполнив show variables like '%connect%'
 

I AM


Рег
23 Jul, 2011

Тем
403760

Постов
400028

Баллов
2418908
  • 15, Apr 2010
  • #7
В данном случае нужно указывать кодировку cp1251_general_ci А после соединения с базой данных выполянять SET NAMES cp1251
 

I AM


Рег
23 Jul, 2011

Тем
403760

Постов
400028

Баллов
2418908
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно