Цитата:
Сообщение от Valery Romanchev
ничего не должно обрезаться
|
Каждый русский символ представляется в виде двух ASCII-кодов. Видимо, php (у меня 5.0.4) понимает, что это 1 буква вместо двух символов и берёт подстроку из передаваемой строки, равную количеству букв, а не количеству символов.
Если я изменю значение в БД сам, то строка отображается нормально.
Прочитал док локализации, увеличил все текстовые поля в два раза (multiplyDBfieldSize=2), но обновление БД не прошло успешно в одной таблице, так как максимальный размер индекса = 1000 вроде, читал про эту багу на сайте типо, вернул к multiplyDBfieldSize=1
Видимо, это никак не связано, но строки продолжают обрезаться
Цитата:
Сообщение от Valery Romanchev
|
Этот фак я читал.
У меня MySQL 4.1.7, кодировка по умолчанию utf-8:
$TYPO3_CONF_VARS["BE"]["forceCharset"] = 'utf-8';
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;';
Сейчас я делаю так: если в template setup есть русские буквы, я на всякий случай всё копирую в буфер, нажимаю кнопку Обновить. Если русские симвобы превращаются в кракозябры, я вставляю текст из буфера, нажимаю кнопку Обновить ещё раз, всё сохраняется нормально.