







|
MySQL.RU - Webboard
Вернуться
Русские символы не сохраняться в cp1251_gener (Guest) 27/04/2007 - 13:33:01
Re: Русские символы не сохраняться в cp1251_gener (Guest) 27/04/2007 - 13:35:23
Re: Может есть ещё места определяющие кодировку?? (Guest) 27/04/2007 - 20:40:36
Re: Может есть ещё места определяющие кодировку?? (Гость) 13/05/2007 - 03:53:48
Re: Русские символы не сохраняться в cp1251_gener (121) 23/12/2010 - 16:00:08
From: Guest - 27/04/2007 - 13:33:01
Subject:Русские символы не сохраняться в cp1251_gener
-----------------
OS: Gentoo Linux
MySQL: 5.с чем-то (предпоследняя стабильная пятёрка)
Создаю таблицу, указываю сравнение: cp1251_general_ci
В браузере выставляю принудительно кодировку cp1251
Для теста вбиваю в таблицу кириличные символы таким скриптом:
[code]<?php
$link = mysql_connect ( "localhost", "root", "" ) or die ( mysql_error () );
mysql_select_db ( "test" );
mysql_query ( "insert into `my` values ('русские символы')" );
$result = mysql_query ( "select * from `my`" ) or die ( mysql_error () );
while ( $row = mysql_fetch_assoc ( $result ) ) {
echo $row['p_name'] . '<br>';
}
mysql_close ( $link );
?>[/code]
В ответ я вижу, что мои символы заменились знаками вопросов.. Как выявить проблему такого поведения??
Основная часть касающаяся кодировок в my.cnf (mysql config):
[code][client]
#password = your_password
port = 3306
socket = /var/run/mysqld/mysqld.sock
[mysql]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=cp1251
[mysqladmin]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=cp1251
[mysqlcheck]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=cp1251
[mysqldump]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=cp1251
[mysqlimport]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=cp1251
[mysqlshow]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=cp1251
[myisamchk]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=cp1251
[myisampack]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=cp1251
# use [safe_mysqld] with mysql-3
[mysqld_safe]
err-log = /var/log/mysql/mysql.err
# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations
[mysqld]
character-sets-dir=/usr/share/mysql/charsets
character-set-server = cp1251
default-character-set = cp1251
user = mysql
port = 3306
socket = /var/run/mysqld/mysqld.sock
pid-file = /var/run/mysqld/mysqld.pid
log-error = /var/log/mysql/mysqld.err
basedir = /usr
datadir = /var/lib/mysql
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
language = /usr/share/mysql/english
[/code]
Т.е. как видите, везде кодировка прописана cp1251.
Дальше для убедительности можно посмотреть сюда:
[code]# mysql --help
....
auto-rehash TRUE
character-sets-dir /usr/share/mysql/charsets
default-character-set cp1251
compress FALSE
database (No default value)
delimiter ;
vertical FALSE
force FALSE
.........
[/code]
И почему ж оно не хочет сохранять мою кирилицу??
Системная кодировка в Линуксе koi8r.
Ещё замечание: если тестовый РНР скрипт сохранить в кодировке utf8 и браузер также переключить в utf8, а сравнение оставить тем же (т.е. cp1251_general_ci), то русские символы сохраняются отлично..
Т.о. сервер MySQL абсолютно не хочет воспринимать русский текст, который я пытаюсь передать ему.
Может я чего недоустановил при сборке..?
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
37786
|
|