Просмотр полной версии : желание сделать utf-8 против вредного хостера
Всем здравствовать.
Есть проблема:
Хостер не дает возможности создавать базу данных при установке typo3. База данных создается через админ панель хостинга. При этом никакие данные кроме пароля не спрашиваются: нажимается кнопка, возвращается имя и логин.
Есть phpMyAdmin в нем видно, что:
-mysql кодировка: utf-8
-MySQL connection collation: utf8_unicode_ci
Но все таблицы создаются в сравнении latin1_german1_ci.
Если после установки менять всем таблицам сравнение - ничего хорошего не выходит. Любое расширение создает новые таблицы и они в latin1_german1_ci.
Каким образом можно решить эту проблему без участия хостера? Может быть где-то можно указать, чтобы ко всем mysql_query на создание таблиц добавлялось collation?
Valery Romanchev
06.09.2009, 13:30
в phpMyAdmin в свойствах базы проставьте collation
в phpMyAdmin в свойствах базы проставьте collation
Нету. Есть только connection collation и оно utf8
Pavel Antonov
06.09.2009, 14:37
Если таблицы создаются через Install Tool, то надо прописать в конфиге TYPO3 (Можно через Install Tool):
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;';
Удалите все таблицы и создайте заново через Install Tool.
Valery Romanchev
06.09.2009, 18:24
Нету. Есть только connection collation и оно utf8
"Операции"
далее - сравнение (внизу)
Если таблицы создаются через Install Tool, то надо прописать в конфиге TYPO3 (Можно через Install Tool):
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;';
Удалите все таблицы и создайте заново через Install Tool.
Никак не влияет на вновь созданные таблицы. Проверено и не один раз :)
"Операции"
далее - сравнение (внизу)
http://www.knutarew-zahnarzt.de/phpmyadmin.jpg
Valery Romanchev
06.09.2009, 23:11
судя по картинке - не выбрана база данных. Жмите на нее в левом фрейме
судя по картинке - не выбрана база данных. Жмите на нее в левом фрейме
Ну что же... Продолжим :)
http://www.knutarew-zahnarzt.de/phpmyadmin2.jpg
ALTER DATABASE `DB618732` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
ALTER DATABASE `DB618732` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
Спасибо!!! Все гениальное просто! Что-то я думал, что если нету графического интерфейса для операций, то и операции запрещены. Забил запрос в phpMyAdmin, после этого все создаваться стало нормально.
А utf8_general_ci или utf8_unicode_ci ????
Сайт нужно делать на немецком и русском языках
dmartynenko
07.09.2009, 18:44
А utf8_general_ci или utf8_unicode_ci ????
Сайт нужно делать на немецком и русском языках
Все что идет после utf8_ влияет только на порядок сортировки.
Для немецкого языка лучше подойдет utf8_unicode_ci.
Подробности есть здесь: http://forums.mysql.com/read.php?103,187048,188748#msg-188748
1. utf8_unicode_ci supports so called expansions and ligatures, for example:
German letter ß (U+00DF LETTER SHARP S) is sorted near "ss"
Letter Œ (U+0152 LATIN CAPITAL LIGATURE OE) is sorted near "OE".
utf8_general_ci does not support expansions/ligatures, it sorts
all these letters as single characters, and sometimes in a wrong order.
2. utf8_unicode_ci is *generally* more accurate for all scripts.
For example, on Cyrillic block:
utf8_unicode_ci is fine for all these languages:
Russian, Bulgarian, Belarusian, Macedonian, Serbian, and Ukrainian.
While utf8_general_ci is fine only for Russian and Bulgarian subset of Cyrillic.
Extra letters used in Belarusian, Macedonian, Serbian, and Ukrainian
are sorted not well.
Все ясно. Всем большое спасибо!!!
Работает на vBulletin® версия 3.8.1. Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot