как начтроить кодеровку ?

  • Автор темы typak
  • Дата начала
Статус
Закрыто для дальнейших ответов.
T

typak

Гость
#1
Здарова !!!Кто знаек как настроить кодировку? Вообщем када извлекаеш из БД таблицу то в место руских символо получается чтото типа такого:
Џа®жҐбб®ал
как его убрать кто занет ?
в программе прописано:
Код:
...
//Устанавливаем кодировку базы данных

mysql_query ("SET NAMES 'CP1251'");
...
Када изменяеш на utf8
Код:
...
//Устанавливаем кодировку базы данных

mysql_query ("SET NAMES 'utf8'");
...
выводит такое:
Џа®жҐбб®ал[/b]
када коментируеш :
Код:
...
//Устанавливаем кодировку базы данных

//mysql_query ("SET NAMES 'utf8'");
...
выводит вопросики:
??®????®??

В my.ini Вроде ср1251 прописано кругом, нипонятно чо он фигню выводит мож кто знает ау!!!! ответъте. :KillMe:

p.s: Нервов уже нехватает
 

1ive

Well-Known Member
12.09.2010
621
0
Россия, Курск
#2
Код:
mysql_query ("SET NAMES ' ___ '");
Не забывай, что и в таблицу надо записывать в той же кодировке.
Кодировку нужно выбирать в соответствии с кодировкой страницы, в которую выводишь.

У тебя так все примерно:
Страница - utf-8
Записи в базе - windows cp1251
А выводишь ты их по разному (в какой бы ты не выводил - будут каракули.)

Перепиши всю инфу в таблице в utf-8
И выводи
Код:
mysql_query ("SET NAMES 'utf-8'");
 
T

typak

Гость
#3
[
quote name='1ive' date='9:01:2011, 16:18 ' post='198045']
Код:
mysql_query ("SET NAMES ' ___ '");
Не забывай, что и в таблицу надо записывать в той же кодировке.
Кодировку нужно выбирать в соответствии с кодировкой страницы, в которую выводишь.

У тебя так все примерно:
Страница - utf-8
Записи в базе - windows cp1251
А выводишь ты их по разному (в какой бы ты не выводил - будут каракули.)

Перепиши всю инфу в таблице в utf-8
И выводи
Код:
mysql_query ("SET NAMES 'utf-8'");
[/quote
Создал БД в utf-8 кодировке тока руский туда неидёт

А как её переписать в utf-8 ? Тока изменил кодировку по умолчанию на utf-8, так оно чота выдает ошибку када руские строки вводиш латинский добавляет а русский нет
Код:
ERROR 1366 (HY000): Incorrect string value: '\x8F\xE0\xAE\xE6\xA5\xE1...' for co
lumn 'name' at row 1
Мож кто чо знает в му.ini прописано:
default-character-set=cp1251; и character-set-server=cp1251 больше там кодировок нету. Версия мускл 5.5.8
мож кто чо еще придложет попробовать?
:KillMe:
 

1ive

Well-Known Member
12.09.2010
621
0
Россия, Курск
#4
Везде нужно использовать одну кодировку.
Если нет знаний и желания для изменения кодировки базы, оставь все в cp1251 и кодировку страницы исправь, в которую информация выводится на "windows cp1251".


"Нервов уже нехватает" Мозгов, видимо, тоже. Георг возвращается.
 
T

typak

Гость
#5
Везде нужно использовать одну кодировку.
Если нет знаний и желания для изменения кодировки базы, оставь все в cp1251 и кодировку страницы исправь, в которую информация выводится на "windows cp1251".


"Нервов уже нехватает" Мозгов, видимо, тоже. Георг возвращается.
А КАК КОДИРОВКУ СТРАНИЦЫ ИСПРАВИТЬ? В АПАЧЕ?
ТАК САМОЕ ИНТЕРЕСНОЕ АНЛИЙСКИЕ БУКВЫ НОРМАЛЬНО ВЫВОДИТ А РУССКИЕ НЕТ

Я В БРАУЗЕРЕ МЕНЯЛ ХОТЕЛ УЗНАТЬ В КАКОЙ КОДЕРОВКЕ ВЫВОДИТСЯ ТО ХОТЬ, ТОКА В КАКУЮ НИСТАВИШ ВСЁРАВНО КАЗЮБРИКИ ВЫВОДЯТСЯ (ЕСЛИБ БЫЛИБ РАЗНЫЕ КОДЕРОВКИ ТО НАВЕРНОБ ХОТЬ ПРИ КАКОЙ НИБУДЬ ПРАВИЛЬНО ОТОБРАЗИЛОСЬ БЫ?)

ТОКАШО УГАДАЛ КАЗЮБРИКИ ЭТИ ВЫВОДЯТСЯ В КОДИРОВКЕ КРИЛИЦА DOS, ТОКА КАК ЕЁ НА РУСКУЮ ПОМЕНЯТЬ У МЕНЯЖ ВРОДЕ В НАСТРОЙКАХ БД СТОИТ ПО УМОЛЧАНИЮ СP1251?

ТАК ШО МНЕ ВЫВОД МТРОНИЦЫ В ДОСЕ ДЕЛАТЬ КАК ЕЕ ИЗМЕНИТЬ КТО ЗНАЕТ?

ЧО НАДО ПРОПИСАТЬ И ГДЕ ШОБ ИЗ DOS КОДИРОВКИ ВЫВОДИЛО В CP1251?
 

vital

Больной Компом Детектед
29.01.2006
2 432
40
codeby.net
#6
Сама база у тебя в одной кодировке, текст, который туда отправляешь в другой, и выводишь ты в третьей. А надо все в одной. Или используй iconv(), как дурак.

И еще, не забывайте про кнопку PHP в редакторе.
 
T

typak

Гость
#7
Сама база у тебя в одной кодировке, текст, который туда отправляешь в другой, и выводишь ты в третьей. А надо все в одной. Или используй iconv(), как мир

И еще, не забывайте про кнопку PHP в редакторе.
А как их все в одну кодировку настроить?
Можна поконкретней где шо изменять Я в мускул всё перепробовал может в апаче шото поменятть?
 

1ive

Well-Known Member
12.09.2010
621
0
Россия, Курск
#8
http://www.sdelaysite.com/kniga/verstka-kniga/html-kodirovka и http://404.by/izmenenie-kodirovki-bazyi-dannyix - изменене кодировки страницы
http://4matic.wordpress.com/2006/11/11/izm...ablits-v-mysql/ - изменение кодировки базы данных
Чтобы изменить кодировку того, что ты уже внес в бд - удали базу, создай новую в правильной кодировке и заноси всю информацию заново.
 
T

typak

Гость
#9
http://www.sdelaysite.com/kniga/verstka-kniga/html-kodirovka и http://404.by/izmenenie-kodirovki-bazyi-dannyix - изменене кодировки страницы
http://4matic.wordpress.com/2006/11/11/izm...ablits-v-mysql/ - изменение кодировки базы данных
Чтобы изменить кодировку того, что ты уже внес в бд - удали базу, создай новую в правильной кодировке и заноси всю информацию заново.
А может у меня сервер крыво стоит ? По умолчанию таблица создана в кодеровке utf8 проверил вот код:

Код:
mysql> show create table `catalogs1`;
+-----------+--------------------------------------------
---------------------------------------------------------
----------------------------------------+
| Table	 | Create Table

|
+-----------+--------------------------------------------
---------------------------------------------------------
----------------------------------------+
| catalogs1 | CREATE TABLE `catalogs1` (
`id_catalog` int(11) NOT NULL AUTO_INCREMENT,
`name` tinytext NOT NULL,
PRIMARY KEY (`id_catalog`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 |
+-----------+--------------------------------------------
---------------------------------------------------------
----------------------------------------+
1 row in set (0.00 sec)
Выполняем запрос в пхп добавляем строку:
@mysql_query ("SET NAMES utf8"); всеравно выводит нипонятно шо :
DSDSD
2 DSDSD‚›‚
3 Џа®жҐб®ал

та даже если в браузере поменять кодеровку на ту шо у меня в бд стоит оно бы нормально наверно показалоб вывелоб правельно, может у меня сервер крыво стоит кто знае я просто 3 день бд учу тока установил?
ЕЩЕ ЕСТЬ ТАКАЯ *отмодерировано* ТОКА ТУТ Я НИРАЗОБРАЛСЯ ЕЩЕ ТУТ УСТАНОВКИ ЭТОЙ ГЛЮЧНОЙ БАЗЫ:
Код:
mysql> show variables like '%char%';show variables like '%char%';
+--------------------------+--------------------------+
| Variable_name			| Value					|
+--------------------------+--------------------------+
| character_set_client	 | cp1251				  |
| character_set_connection | cp1251				  |
| character_set_database  | utf8					 |
| character_set_filesystem | binary				  |
| character_set_results	| cp1251				  |
| character_set_server	 | utf8					 |
| character_set_system	 | utf8					 |
| character_sets_dir	  | C:\MySQL\share\charsets\ |
+--------------------------+--------------------------+
8 rows in set (0.00 sec)

+--------------------------+--------------------------+
| Variable_name			| Value					|
+--------------------------+--------------------------+
| character_set_client	 | cp1251				  |
| character_set_connection | cp1251				  |
| character_set_database  | utf8					 |
| character_set_filesystem | binary				  |
| character_set_results	| cp1251				  |
| character_set_server	 | utf8					 |
| character_set_system	 | utf8					 |
| character_sets_dir	  | C:\MySQL\share\charsets\ |
+--------------------------+--------------------------+
8 rows in set (0.00 sec)
МОЖ КТО ПОЙМЁТ ЧО НИКТАК ТОКА Б ПОПОДРОБНЕЙ
 
T

typak

Гость
#11
А этот запрос @mysql_query ("SET NAMES utf8"); ЩО ДЕЛАЕТ ВЫВОДИТ СТРАНИЦУ В UTF8 тада я так понимаю?

Ну тода если у нас таблица в кодеровке utf8 страница выводится тоже в utf8 то как же нам из базы данные вывести в utf8 ???
или я чота нидопонял?
 
T

typak

Гость
#12
Вообщем создал я базу ка написоно в кодировке всё в одно сз1251 но выводит всёравно то шо и выводило.
Делал так :

1.Установил значение переменных спомощью
SET character_set_client=cp1251;
SET character_set_connection=cp1251;
SET character_set_database=cp1251;
SET character_set_results=cp1251;
character_set_server=cp1251;

2.Проверил установилось или нет командой: SHOW VARIABLES LIKE 'character%';
Код:
mysql> SHOW VARIABLES LIKE 'character%';
+--------------------------+--------------------------+
| Variable_name			| Value					|
+--------------------------+--------------------------+
| character_set_client	 | cp1251				  |
| character_set_connection | cp1251				  |
| character_set_database  | cp1251				  |
| character_set_filesystem | binary				  |
| character_set_results	| cp1251				  |
| character_set_server	 | cp1251				  |
| character_set_system	 | utf8					 |
| character_sets_dir	  | C:\MySQL\share\charsets\ |
+--------------------------+--------------------------+
вроде всё установилось

3.В таких настройках создаю новую бд и таблицу:
creat database aaa;
create table catalogs (
id_catalog int(11) NOT NULL auto_increment,
name tinytext NOT NULL,
PRIMARY KEY (id_catalog)
);
NSERT INTO catalogs VALUES (1, 'Процесоры');

4.Выводим в пхп всёравно выводит козюбрики результат // 1 Џа®жҐб®ал //

И где шо я нитак настроил кто догадался ?!? Если кому мало инфы пишите ? Вроде все делаю так как на форумах написано а изменений никаких, может версия MySQL глюченая 5.5 скачал Мож 5.1 установить кто шо посоветует а то шото шо ниделаеш ничо нипомогает, никакой реакции как выводил так и выводит ? Специалисты где вы ау? Или никто несообразит? Уже 12 00 часов настраиваю и никак нинастрою ...
Ну чо вы никто низнает чи шо?
ТЕМА ВСЁ ЕЩЁ ОТКРЫТА
 
T

typak

Гость
#13
Шо вы советнички я уже розчехлился. Нужно было дос кодеровку консоли из 866 поменять на 1251
Жалко шо никто нисмог объясник лузеры)))) :)

Если долго мучится то что нибудь получится ;)
 
Статус
Закрыто для дальнейших ответов.