В PHP скрипте выбираю из MySQL базы данные и отображаю на странице. Кодировки и базы и таблиц: "cp1251 (Windows Cyrillic)", но русский текст на странице отображается только как "??????????????????????" Как побороть эту фигню?
alex6565 какая версия MySQL покажи конфиг MySQL по кодировкам в какой кодировке отдается страница? покажи header()
MySQL 5.0 К сожалению - это все, что я могу сказать. Я вообще программист Oracle. Начальство, в качестве общественной нагрузки, попросило доработать корпоративный сайт, поэтому пришлось срочно что-то начитать по PHP&MySQL. Помогите разобраться с этой глупостью - програмимист программиста всегда поймет! Спасибо.
alex6565 1. вот там геде-то есть нстройки кодировок. надо проставить все в нужные 2. после коннекта выдать mysql_query('SET NAMES CP1251');
Да, в том-то и вся беда, что и БД и таблицы с правильными кодировками. В PHPMyAdmin я просматриваю данные - показывает нормально. На страничках все, что выводится через "echo", тоже нормально по-русски, но все, что получено в результате запроса из базы - только "????????????" Строку "mysql_query('SET NAMES CP1251');" поставил и в connect.inc после получения коннекта и в начале каждой странички - результат тот же
Да нет, моих трудов пока снаружи нет - на первой страничке споткнулся. К сожалению не помогло и такое (в connect.inc) <?php #соединяемся с БД @ $db = new mysqli('######','#####','#####','####'); #проверяем коннект if (mysqli_connect_errno()) { echo'Ошибка: Не удалось установить соединение с базой данных.'; exit; } $query1= "set character set cp1251"; $result = $db->query($query1); ?>
Oracle это святое! я тебя понимаю ... особенно на многорейдовых массивах на каком нить кластере с базой в пару Тб
На одном языке говорим, товарищь!!! Кстати вылечил проблему так: в заголовке каждого файла require_once 'connect.inc'; $query1= "set character set cp1251"; $result = $db->query($query1); SET NAMES CP1251 - почему-то не прокатило Еще раз спасибо! Приятных выходных!