Проблема с кодировкой!

  • Автор темы Автор темы yamoodo
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

yamoodo

Участник
Топикстартер
Сообщения
32
Реакции
0
Уважаемые!

Ситуация такая:
есть страница http://www.timetophoto.ru/test.php
в мета указана кодировка:
Код:
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
Эта стриница обращается к базе откуда берет текст. Сама база в кодировке cp1251_general_ci, т.е. через phpMyAdmin, параметр Сравнение для базы указан cp1251_general_ci, а так же для всех таблиц и полей таблиц. В самом phpMyAdmin кирилический шрифт отображается нормально, а вот на странице крякозябры. Вернее только тот текст который берется из базы. Если в самом браузере начинать беребирать кодировки, то при выборе UTF8 текст из базы отображается корректно, а вот остальной текст на странице - крякозябры. Как можно решить подобную проблему!?
 
Ответ: Проблема с кодировкой!

Перейти, как и всё мировое сообщество, на UTF8?

Кстати, что это за inDsystem? Может, там внутри чего понакручено?
 
Ответ: Проблема с кодировкой!

Перейти, как и всё мировое сообщество, на UTF8?
Ну да как вариант конечно. Только мне кучу всего переписать придется :)

Кстати, что это за inDsystem? Может, там внутри чего понакручено?
Это CMS которую я пишу. Там ничего не накручено, там такая же проблема с кодировкой. И только на этом хосте.
 
Ответ: Проблема с кодировкой!

Мне кажется, свежие версии MySql умеют хранить данные в разных кодировках одновременно, независимо от глобальных настроек самой базы. Теперь, видимо, нужно явно указывать желаемую кодировку результата при написании запроса. Надо погуглить :)
 
Ответ: Проблема с кодировкой!

Да я вот никак и не могу понят где проблема, в самой базе или со страницей. Т.к. в phpMyAdmin выглядит все в норме вроде.
 
Ответ: Проблема с кодировкой!

Я бы копал в сторону вашего php-скрипта. Возможно не хватает опций при подключении к базе или в самом запросе. Значения полей попали в базу в юникоде, 'phpMyAdmin' может переконвертировать их на лету, а вы тянете «как есть».
 
Ответ: Проблема с кодировкой!

Проблема в том, что на других хостах все работает отлично. И только здесь столкнулся с такой проблемой.

Вот пример запроса к базе:

Подключение:
PHP:
$db = mysql_connect($host, $user_base, $pas);
mysql_select_db($base,$db);
Запрос на выборку записей:
PHP:
$result_content = mysql_query("SELECT * FROM sections_language_1 WHERE id='3'",$db);
$content_head  = mysql_result($result_content,0,"head");
 
Ответ: Проблема с кодировкой!

Проблема решена! Добавил после подключения к базе строчку:
PHP:
mysql_query('set names cp1251');
И все заработало как часики!!!
 
Статус
Закрыто для дальнейших ответов.