Вопрос № 145065: Здравствуйте, уважаемые эксперты! Проблема с кодировкой mysql. В my.ini стоит default-character-set=cp1251, в таблицах базы тоже, в php.ini default_charset = "WINDOWS-1251", обычный html текст на страничке выдается в нормальной вин кодир...
Вопрос № 145.065
Здравствуйте, уважаемые эксперты! Проблема с кодировкой mysql. В my.ini стоит default-character-set=cp1251, в таблицах базы тоже, в php.ini default_charset = "WINDOWS-1251", обычный html текст на страничке выдается в нормальной вин кодировке. Запрос к базе пишу в переменную $query. echo $query в браузере пишет русскими буквами: select path,filename from file,ip where file.idfile=ip.idfile and ip.fam= иванов . Тем не менее конструкция mysql_query("$query") or die (mysql_error())
дает Unknown column 'семкин' in 'where clause'. Т.е. запрос приходит в utf-8 ?!?! Пробовал писать после коннекта к базе mysql_query("set names cp1251"), не помогает. Буду признателен за любую помощь.
Отправлен: 26.09.2008, 06:38
Вопрос задал: dobroman (статус: 2-ой класс)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: GINes
Здравствуйте, dobroman!
Думаю, что проблема кроется в том, что фамилию 'иванов' надо указывать в кавычках, смотрите приложение. Иначе MySQL считает, что это название поля (столбца) и соответственно выдаёт сообщение об ошибке.
Приложение:
Ответ отправил: GINes (статус: Студент)
Ответ отправлен: 26.09.2008, 08:38 Оценка за ответ: 5 Комментарий оценки: Большое спасибо! все получилось:)
Отвечает: Большаков Владимир Андреевич
Здравствуйте, dobroman! Попробуйте в скрипте дополнительно указать кодировку:
//Это для MySQL mysql_set_charset('cp1241',$db);//Где $db - это указатель на наше подключение к БД.
//А это для HTTP header('Content-Type: text/html; charset=windows-1251');
--------- SELECT * FROM `life`
Ответ отправил: Большаков Владимир Андреевич (статус: 1-ый класс)
Ответ отправлен: 26.09.2008, 16:04 Оценка за ответ: 3