MySQL и вставка кириллицы - Форум успешных вебмастеров - GoFuckBiz.com
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB93.4409
BTC/USD64146.7347
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 10.01.2012, 13:25   #1
xatman
Особый статус
 
Аватар для xatman
 
Регистрация: 05.10.2007
Сообщений: 771
Бабло: $163646
По умолчанию MySQL и вставка кириллицы

Есть трабла
Делаю INSERT в базу русских букв
Они (слова) вставляются как знаки вопроса
Причем после конекта, перед отправкой запроса сделано mysql_query("set character set utf8");
и пох

Руками в PHPMyAdmin вставляю - все гууд
Пробую после коннекта сделать mysql_query("set character set win1251"); тогда SELECT выбирает кириллицу как знаки вопроса.

SHOW VARIABLES LIKE "character\_set\_database";
выдало
Variable_name Value
character_set_database utf8

__________________
EvaPharmacy - лучшая фарма партнерка (ICQ: 750000 Jabber: [email protected]) / Помощь детям.
xatman вне форума  
Старый 10.01.2012, 14:04   #2
Egorka
Ебланнед
 
Регистрация: 02.07.2008
Сообщений: 233
Бабло: $78760
По умолчанию

Если есть проверка на допустимость символов, то проблема может быть из-за функции htmlentities().
Egorka вне форума  
Старый 10.01.2012, 14:08   #3
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

Еще раз помогло в начале всего выполнять mysql_query("SET NAMES utf8;");

Но это говнорешение, надо, короче, чтобы изначально была выбрана рабочая кодировка (УТФ-8 например) и везде ее выставлять - в бд, в хедерах страниц, в пхп-файлах и т.д. и будет счастье.
Drunk Monk вне форума  
Старый 10.01.2012, 18:32   #4
MilkSucker
Senior Member
 
Регистрация: 02.07.2008
Сообщений: 174
Бабло: $44985
Отправить сообщение для MilkSucker с помощью ICQ
По умолчанию

Делать как вариант iconv в юникод перед вставкой в таблицу. Но я сам тоже так и не разобрался как вставлять, например, японские символы в перемешайте с русскими.
MilkSucker вне форума  
Старый 10.01.2012, 19:01   #5
somebody_
Senior Member
 
Регистрация: 05.09.2008
Сообщений: 606
Бабло: $124350
Отправить сообщение для somebody_ с помощью Telegram
По умолчанию

пакажи код как делаешь инсерт ...
как подготавлюваются переменные перед вставкой ? скорее всего сабака зарыта там ...

Цитата:
Делать как вариант iconv в юникод перед вставкой в таблицу.
или так переменные так подготавливать ...


Цитата:
"SET NAMES utf8;"
почему гавно ? можно вначале послеконнекта 1 раз отправлять и все норм ...
__________________
Пилю под Wordpress на php, html5, css3, jquery, since 2008 - wpmastering.pro
somebody_ вне форума  
Старый 10.01.2012, 21:22   #6
dtd
Senior Member
 
Аватар для dtd
 
Регистрация: 18.09.2011
Сообщений: 330
Бабло: $121160
По умолчанию

cp1251 тогда уже наверно, а не utf8.
а вообще доков много в гугле по этому поводу) сам недавно сталкивался
dtd вне форума  
Старый 11.01.2012, 07:10   #7
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

1) надо удостовериться что сам контент для вставки содержит utf8, либо можно привести к нему с помощью iconv
2) если ты пытаешь шлешь данные постом или гетом, то надо глянуть с каким хедером приходят эти запросы на сервер, не факт что все в том же utf8
3) ну и важна кодировка mysql-клиента(php-mysql) и mysql-сервера, а также

Немного спама про настройку Mysql:
Проблемы с кодировкой mysql
настройка mysql
http://dev.mysql.com/doc/refman/5.1/...onnection.html
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 11.01.2012, 14:17   #8
xatman
Особый статус
 
Аватар для xatman
 
Регистрация: 05.10.2007
Сообщений: 771
Бабло: $163646
ТС -->
автор темы ТС По умолчанию

Проблема решена путем добавления записи
PHP код:
mysql_query('SET NAMES utf8'); 
после конекта к базе (после конекта к базе).

и кода
Код:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
__________________
EvaPharmacy - лучшая фарма партнерка (ICQ: 750000 Jabber: [email protected]) / Помощь детям.
xatman вне форума