Master-X
Регистрация
|
Вход
Форум
|
Новости
|
Статьи
Главная
»
Форум
»
Хостинги / Домены / Железо
»
Тема:
UTF-8 мать иё
Новая тема
Ответить
цитата
14/08/16 в 00:05
S_Flash
Создаю в саблайме док UTF-8 UNIX с SQL командами test.sql.
Заливаю на сервер бинарном режиме.
file -bi test.sql
text/plain; charset=utf-8
открываю в vim test.sql, русские символы отображаются как:
Та же песьня, если загнать в MySQL
mysql -u tester -p tester < test.sql
SELECT * FROM tester WHERE id = 8121734;
Бля, ну что ж за хуйня! Вроде бы же UTF-8 как раз и придуман, чтоб решить эти проблемы. Может русский текст вставлен был из другого дока, где была досовская кодировка? Но схера тогда он в саблаймовском UTF-8 документе корректно отображался?
ПС. Кстати под виндой во вьювере Lister (Total Commander) текст становится читаемым только при ручном выборе UTF-8 и обязательно ANSI (Windows Characters). ANCII - не катит.
цитата
14/08/16 в 04:58
Magistrator
ты бы структуру таблицы показал штоле...
цитата
14/08/16 в 08:57
S_Flash
Код:
CREATE TABLE IF NOT EXISTS `tester` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`text` varchar(255) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `text` (`text`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
цитата
14/08/16 в 09:50
Magistrator
1. попробуй вставить данные в таблицу и прочитать их непосредственно на сервере. работает ли кодировка?
2. залей файл на сервер как текстовый.
3. если у тебя данные в виде русского и английского текста, то проще это все вставить в базу в текущей кодировке, а потом уже сконвертировать в юникод.
цитата
14/08/16 в 12:27
S_Flash
Magistrator писал:
1. попробуй вставить данные в таблицу и прочитать их непосредственно на сервере. работает ли кодировка?
Пробовал добавляется.
Magistrator писал:
2. залей файл на сервер как текстовый.
Проблема ведь не в переносе строк..
Magistrator писал:
3. если у тебя данные в виде русского и английского текста, то проще это все вставить в базу в текущей кодировке, а потом уже сконвертировать в юникод.
Текуцщая и есть UTF-8
цитата
14/08/16 в 12:37
Magistrator
ты не понял.
1. добавь строку в русской кодировке через мускульную консоль. потом сделай выборку и посмотри, что получилось.
2. залей все же как текстовый файл, а не бинарник.
цитата
14/08/16 в 12:45
S_Flash
Как я понял проблема в ASCII и ANSI..
цитата
14/08/16 в 12:47
Magistrator
ну ну
Последний раз редактировалось: Magistrator (
14/08/16 в 12:53
), всего редактировалось 2 раз(а)
цитата
14/08/16 в 12:51
JM
ну у меня через шелл всегда такая же фигня
а через phpadmin всё ровно... правда все таблички utf8_general_ci
цитата
14/08/16 в 15:54
xjam
Убедись, что в настройках терминала стоит UTF-8
в путти: Window - Translation
цитата
14/08/16 в 21:40
Stek
Попробуй в качестве первого запроса вставить :
SET CHARSET 'utf8';
цитата
14/08/16 в 22:49
S_Flash
1) Кроче, попробовал сначала корректные дамппы создать. Оказывается, если создавать через блядский Adminer и через mysqldump, то получаются довольно разные по кодировке sql дампы! При этом adminer хоть и пишет utf8, но лепит туда хер пойми что.
Но это не до конца решило пролему, а точнее не решило. Хотя под линукс уже файл можно было просмотреть редактором в utf8, что и подсказало, что способ дампа решает многое.
2) Сделал, как советовал Stek, только указал при дампе --default-character-set=utf8
И только тогда получилось адекватно влить данные!
цитата
15/08/16 в 00:01
dizziness
кактус походу вставляет
цитата
15/08/16 в 00:28
dizziness
S_Flash писал:
1) Кроче, попробовал сначала корректные дамппы создать. Оказывается, если создавать через блядский Adminer ...
ну раз минусанул) ты бля дебил просто, элементарно загуглить тупняковые вопросы не в состоянии, тебе самому за себя не стыдно ?
цитата
15/08/16 в 00:32
dizziness
Цитата:
то получаются довольно разные по кодировке sql дампы
гугл походу для тупых сделали, и стековерфлоу, этот еблан на мастере тупые вопросы решил заливать
Новая тема
Ответить
Эта страница в полной версии