imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 23.09.2005, 09:21     # 1
N1ck0l@y
Guest
 
Сообщения: n/a

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

Связка:
mysql-4.1.12-win32
php-5.0.5-Win32
apache_2.0.54-win32
phpMyAdmin-2.6.4-pl1
mysql-administrator-1.1.2-win
интернет-магазин: Shop Script Free
ОС: Windows XP SP2
тестю на localhost:80
Проблема: При загрузке интернет магазина, каталог товаров и сами товары - русские символы (т.е данные которые берутся из БД в MySQL) отображаются как "???????", остальное все - нормально (в т.ч. и английские символы).
Настройки Apache (httpd.conf):
AddDefaultCharset Windows-1251
Настройки PHP (php.ini)
; default_charset = "iso-8859-1" - закоментировано !!!
Настройки MySQL (my.ini)
[client]
default-character-set=cp1251
[mysqld]
default-character-set=cp1251
default-storage-engine=INNODB

Команда mysql>status дала:
Server Characterset cp1251
DB characterset cp1251
client characterset latin 1
conn. characterset latin1

PHPMyAdmin показывает:
Variable Session value Global value
character set client utf8 cp1251
character set connection cp1251 cp1251
character set database cp1251 cp1251
character set results utf8 cp1251
character set server cp1251 cp1251
character set system utf8 utf8 ...
//почему session value отличается от global value ??//
базу данных shop_data подключал стандартную по умолчанию в Shop Script с примерами каталогов и товаров. Английские символы отображаются, нормально. При забивке новых наименований товаров, русские символы снова отображаются как "?????". Тех поддержка скрипта интернет-магазина посоветовала "Для решения этой проблемы попробуйте выставить через phpMyAdmin кодировку windows-1251."
Но где? Я поменял кодировку для таблиц в БД в MySQLAdministrator'е с koi8-r на cp1281, в My SQL (настраивал с помощью MySQLInstanceConfig)
стоит кодировка по умолчанию - cp1281, но почему mySQL>status показывает одно, phpmyadmin - другое, а настройки в my.ini - вообще другие? На главн. стр. PhpMy Admin показывает:
MySQL charset: UTF-8 Unicode (utf8) //почему, ведь я в Мускуле ставил кодировку по умолчанию - cp1281 ??? //
MySQL connection collation cp1251 general_ci - //это уже я выставил, было utf8_general_ci//

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

Тема http://www.imho.ws/showthread.php?t=62430&page=1 - так и не решила подобной проблемы..

Последний раз редактировалось N1ck0l@y; 23.09.2005 в 09:24.
 
Старый 23.09.2005, 13:17     # 2
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
Сам пхпмайадмин видит русские буквы?
RaZEr вне форума  
Старый 23.09.2005, 13:41     # 3
N1ck0l@y
Guest
 
Сообщения: n/a

Цитата:
Сообщение от RaZEr
Сам пхпмайадмин видит русские буквы?
Нет, в Базе также показывает русские записи, как "???????"
 
Старый 23.09.2005, 14:24     # 4
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
Возможно данные уже испорчены. Думаю здесь проще всего их удалить, настроить все кодировки и потом уже загрузить дамп ещё раз.
RaZEr вне форума  
Старый 23.09.2005, 20:01     # 5
Naked
::VIP::
 
Аватар для Naked
 
Регистрация: 15.05.2005
Адрес: Питер
Сообщения: 1 194

Naked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked Сэнсэй
а если попробовать создать новую таблицу и в нее русские записи запихнуть, то будет видеть, или это только для определенной таблицы?
__________________
Чтобы воля стала действующим началом, тело должно быть совершенным.
Naked вне форума  
Старый 26.09.2005, 13:50     # 6
Dem80
Newbie
 
Регистрация: 09.04.2005
Адрес: Екатеринбург
Сообщения: 29

Dem80 Нуль без палочки
такая же байда была. Причем даже русские символы не заносились в базу. т.е. пишу например "dfgdfgппрвыаи12321jfgkd", то записывается только первыа часть, до первой русской буквы ""dfgdfg".
Чего только с базой не делал, помогло только полное удаление мускула(как через унистал, так и руками) и новая установка вчистую.
Dem80 вне форума  
Старый 26.09.2005, 15:11     # 7
xmaker
Junior Member
 
Регистрация: 07.09.2005
Сообщения: 61

xmaker Нуль без палочки
Подскажите как настроить отбражение русского в Mysql 4.1 через браузер русский идет нормально а вот если залезть в phpmyadmin то там все русские данные в таблицах неотображаются по русски.

Кодировка стоит utf8 как ее поменять на cp1251?
xmaker вне форума  
Старый 27.09.2005, 08:26     # 8
N1ck0l@y
Guest
 
Сообщения: n/a

Цитата:
Сообщение от The_naked
а если попробовать создать новую таблицу и в нее русские записи запихнуть, то будет видеть, или это только для определенной таблицы?
Когда создаешь таблицу в кодировке latin1 на странице интернет-магазина каталог товаров отображается нормально, а в PHPMYAdmin всякая несуразица вместо наименований товаров. Теперь как я понял мне надо изменить кодировку в MySQL client characterset на cp1251, и conn. characterset на cp1251, и создать таблицу в кодировке cp1251.
Тоько я не знаю как изменить кодировку client characterset и conn. characterset в MySQL (Команда mysql>status), только я не знаю как это сделать, подскажите кто знает.
 
Старый 28.09.2005, 09:07     # 9
N1ck0l@y
Guest
 
Сообщения: n/a

Так что никто не подскажет как поменять кодировку
client characterset и conn. characterset на cp1251 в MYSQL ??????????
А то команда mysql>status выводит

Server Characterset cp1251
DB characterset cp1251
client characterset latin 1
conn. characterset latin1

Когда делаю set character set cp1251, то значения client characterset и conn. characterset меняются на cp1251, но после выхода обратно становится по умолчанию на latin1 почему-то

Мои настройки:
в my.ini: default-character-set=cp1251
в httpd.conf: AddDefaultCharset=win1251

Помогите, пожалуйтста, кто знает !!!
 


Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 00:03.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.