ох уж эти MySQL, вечно любят прикидываться UTF-8, а на самом деле там
может быть что угодно
на странице где появляются кракозябры попробуй переключить браузер в другие кодировки если увидишь кракозябры в нормальном тексте значит эта кодировка и есть в твоей БД
остается только перекодировать iconv тебе в помщь
переключал. все равно кракозябры. только другие. как-то сомнительно, что проблема в mysql. этот php код, помещенный в отдельный файл, в консоль выводить нормальный текст, в окно браузера выводит нормальный текст. кракозябры только если код помещается в тело страницы wordpress. вот что для меня загадка. причем, повторюсь еще раз, echo «привет»; помещенный на той же странице wordpress выводит нормальный текст, а результат SELECT-а, пропущеный через mysql_fetch_array — кракозябры…
можете поступить так — сделайте плагин для своего кода, оформите через шорттег — и вставляйте его на любой странице, где хотите..
инфа в кодексе есть.. там плагин написать, не так много забот))
Модератор
Юрій
(@yube)
Есть база в MySQL (utf-8), есть php код (подключается к этой базе и берет данные)
Между «подключается» и «берет» должнен быть пункт «устанавливает кодировку» (SET NAMES). Если этого не делать, то кодировка «общения» будет та, которая стоит на хостинге по умолчанию, то есть, непредсказуемая.
на хостинге utf-8. set names добавлял. не помогает. вечером попробую подсунуть свой код в виде плагина.
Модератор
Юрій
(@yube)
на хостинге utf-8.
В каком месте? Боюсь, Вы не понимаете, о чем речь.
set names добавлял.
Как? Код покажите.
кажется я нашел в чем причина. данные в базу я заносил с консоли. когда открыл таблицы в phpmyadmin, то увидел те самые кракозябры, которые наблюдал на странице сайта. в итоге просто перебил все данные (благо их не много) уже в phpmyadmin. все. проблема решена.
моя ошибка была в том, что перед внесением данных в базу с консоли забыл выполнить set names utf8. не нужно забывать такие вещи )
всем большое спасибо за участие