Задать вопрос
@Mussi

Кодировка, везде utf-8, в бд — кракозябры, что делать ?

Сервер на локали на денвере.
Есть интерфейс для добавления данных в бд на пхп. В начале пхп страницы стоит
header('Content-Type: text/html; charset=utf-8');
вся бд и таблица в utf-8
SHOW VARIABLES LIKE  'char%'
character_set_client
utf8
character_set_connection
utf8
character_set_database
utf8
character_set_filesystem
binary
character_set_results
utf8
character_set_server
utf8
character_set_system
utf8
character_sets_dir
\usr\local\mysql-5.5\share\charsets\

в подключении к бд добавил
mysql_query("set names utf8");
в httpd.conf закоментировал строчку
AddDefaultCharset windows-1251
также пробовал менять на
AddDefaultCharset utf-8
данные вписываются в бд в виде кракозябр
ÐовоÑибирÑк
отображается на сайте все это дело корректно
что еще можно придумать, чтобы исправить эту ****** ошибку ?
  • Вопрос задан
  • 4663 просмотра
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
@whats
изменить кодировку в программе в которой вы просматриваете данные из базы
средствами базы посмотрите в какой кодировке находится текст в ячейке
Ответ написан
DmitryPRG
@DmitryPRG
PHP программист
В своих программах я использую 2 строчки.
Встречал случаи когда не хватало только одной.

mysql_query("SET NAMES utf8");
mysql_query("SET CHARACTER SET utf8");
Ответ написан
Помню тоже была такая проблема. А всё произошло из-за того, что один скриптик подключенный был не в кодировке utf-8. Проверь кодировки своих скриптов, может быть проблема и в клиентской части, т.е. данные приходят уже в неправильной кодировке.
Так же посоветую добавить htaccess:
AddDefaultCharset UTF-8

Я сейчас как параноик, слежу чтобы всёёёёё было в utf-8 :-)
Ответ написан
Комментировать
@Mussi Автор вопроса
Вобщем я как обычно затупил и правил файл с коннектом в папке с бекапом, вместо рабочей :(
mysql_set_charset('utf8',$conn);
или
mysql_query("SET NAMES 'utf8'");
вполне хватило чтоб товары в базу добавлялись по русски, правда старые товары выводятся теперь кракозябрами, но это было все тестово )
всем спасибо, извиняюсь что потратил Ваше время :)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы