Просмотр полной версии : TYPO3/TemplaVoila, windows-1251 с PHP5 (Апгрейд старых сайтов)
Pavel Antonov
05.08.2007, 19:01
В виду того что много заявлений о том что PHP4 больше не будет поддерживаться, некоторых может коснуться вопрос переноса старых сайтов на PHP5.
Общеизвестная проблема: PHP5 не поддерживает кодировку windows-1251 для XML, потому апгрейд в лоб не возможен.
Я подготовил патчи для 3.8.1/4.1.1+ которые решают данную проблему. Патч выполняет предварительную перекодировку XML в utf-8 и обратное раскодирование после парсинга данных.
Как применить патч: patch class.t3lib_div.php < div_X.X.X.patch
Внимание:
Необходим модуль mbstrings
Старые версии TemplaVoila не вставлают кодировку XML. Обязательно добавить в начало XML в DS: <?xml version="1.0" encoding="windows-1251" standalone="yes" ?>
Старый static_tables может пытаться переопределять $this. Переименуйте его в $_this.Все, теперь сайты на windows-1251, могут работать с PHP5! Можно конечно и новые делать с 1251, но есть же utf, 8=) Удачи!
radandri
23.10.2007, 02:30
А где вводить patch class.t3lib_div.php < div_X.X.X.patch ?
Может ктонить выложить пропатченый class.t3lib_div.php под 4.1.1 ?
filippoff
24.03.2008, 04:29
utf-8 это прекрасно, но у меня и сайт и база в utf-8 а xml возвращается в xajax в 1251. откуда лезет - не пойму :о(
filippoff
24.03.2008, 04:54
поборол дописав в config помимо locale_all = ru_RU.utf8
config.metaCharset = utf-8
config.additionalHeaders = Content-Type:text/html;charset=utf-8
Старый static_tables может пытаться переопределять $this. Переименуйте его в $_this.
А можно пояснений по этому пункту?
Где переименовывать $this в $_this?
Pavel Antonov
17.06.2008, 01:55
А можно пояснений по этому пункту?
Где переименовывать $this в $_this?
Я уже толком не помню. Включите отображение ошибок, если ошибка про попытку переименовывания $this появится она так же укажет и на конкретный файл.
Pavel Antonov
24.07.2008, 16:15
UPD: Патч работает с версией 4.1.7
vasyl'0k
01.10.2008, 16:26
А где вводить patch class.t3lib_div.php < div_X.X.X.patch ?
Может ктонить выложить пропатченый class.t3lib_div.php под 4.1.1 ?
Смотри здесь - http://shaman.asiadata.ru/node/74
Я только начал изучать Typo3, второй день. И столкнулся с этой проблемой. Опишите пожалуйста подробно, как именно использовать этот патч? Версия 4.2.4
И еще вопрос. Как удалить шаблон из Typo3?
Dronch
через ssh
сначало
#cd до папки с файлом class.t3lib_div.php
затем
#patch class.t3lib_div.php < div_X.X.X.patch где Х.Х.Х версия патча (название скачаного выше файла)
но у меня возникли некоротые ошибки при этой процедуре и я после прочтения
Главы Ручное редактирование файлов с кодом. вот здесь http://shaman.asiadata.ru/node/74 блокнотом открыл оба файла и заменил код в исходном
>>>И еще вопрос. Как удалить шаблон из Typo3?
ты используешь TemplaVoila?
>>ты используешь TemplaVoila?
Да.
тогда зайди в Storage Folder в режиме список
и удали оттуда DS и TO
или просто создай DS и TO из новой шаблон-страницы
и сохрани его в этот шаблон
тогда зайди в Storage Folder в режиме список
и удали оттуда DS и TO
или просто создай DS и TO из новой шаблон-страницы
и сохрани его в этот шаблон
Я удалил DS и TO. Теперь нужно удалить файлы шаблона из папки templates?
поборол дописав в config помимо locale_all = ru_RU.utf8
config.metaCharset = utf-8
config.additionalHeaders = Content-Type:text/html;charset=utf-8
Подскажите, где искать этот файл конфиг?
Нашел localconf.php, но там нет строки locale_all = ru_RU.utf8.
dmartynenko
23.01.2009, 13:21
Подскажите, где искать этот файл конфиг?
Нашел localconf.php, но там нет строки locale_all = ru_RU.utf8.
Это не файл конфига.
Эти строки прописываются в TS (TypoScript) шаблоне сайта.
А кто нибудь может скинуть пропатченный class.t3lib_div.php для версии 4.2.4 ?
toandreich@gmail.com
тогда зайди в Storage Folder в режиме список
и удали оттуда DS и TO
или просто создай DS и TO из новой шаблон-страницы
и сохрани его в этот шаблон
Я сделал, но дерево страниц шаблона, осталось. Как удалить шаблон полностью, что бы ничего не осталось?
У меня стоит версия Ver. 4.2.4. Почему выскакивает ошибка Unsupported target encoding "windows-1251" Или эту версию тоже надо патчить?
dmartynenko
26.01.2009, 16:43
Эта ошибка означает что у вас есть сохраненный XML (FlexForm / TV) в базе в такой кодировке.
Надо или найти и устранить (исправить) этот XML, или патчить - так как XML парсер из PHP5 поддерживает только кодировку UTF8.
dmartynenko
27.01.2009, 16:46
А кто нибудь может скинуть пропатченный class.t3lib_div.php для версии 4.2.4 ?
Если еще не нашли, то можете сделать сами. Возмите пропатченый от старой версии и внесите аналогичные изменения в функцию xml2array()
Всем вечер добрый!
Накопилось несколько вопросов.
Я скачал и разпаковал "wec_starter-4_2_3-1_0_0_fullserver.zip",
запустил http://localhost:4001/phpmyadmin/ создал новую базу "utf8_unicode_ci".
затем очистил папку "htdocs" и перезалил в неё "wec_starter-4_2_3-1_0_0" для стандартной установки на UNIX-вый сервер с предустановленными данными.
В админке "редактор страниц" сначала вылетало предупреждение "Warning.......................2308"
Пропатчил файл "class.t3lib_div.php" он почему то патчится с ошибками.
В админке вылетает новая ошибка "Warning: xml_parser_set_option() [function.xml-parser-set-option]: Unsupported target encoding "windows-1251" in e:\and-you.su\CMS\typo\UTF8\htdocs\t3lib\class.t3lib_div. php on line 2309"
Честно говоря это предупреждение закрывает пол экрана и не даёт возможности сохранять изменения так как елементы страницы накладываются друг на друга.
И ещё интересное наблюдение База данных у меня UTF8 а браузер в котором просматриваю сотворённое - кирилические символы отображает только в Win-1251.
Версии:
Typo3 4.2.3
PHP 5.1.4
Apache 1.3.35
CGI 1.1
MySQL 4.1.7
Valery Romanchev
02.02.2009, 12:38
Всем вечер добрый!
Накопилось несколько вопросов.
Я скачал и разпаковал "wec_starter-4_2_3-1_0_0_fullserver.zip",
запустил http://localhost:4001/phpmyadmin/ создал новую базу "utf8_unicode_ci".
затем очистил папку "htdocs" и перезалил в неё "wec_starter-4_2_3-1_0_0" для стандартной установки на UNIX-вый сервер с предустановленными данными.
В админке "редактор страниц" сначала вылетало предупреждение "Warning.......................2308"
Пропатчил файл "class.t3lib_div.php" он почему то патчится с ошибками.
В админке вылетает новая ошибка "Warning: xml_parser_set_option() [function.xml-parser-set-option]: Unsupported target encoding "windows-1251" in e:\and-you.su\CMS\typo\UTF8\htdocs\t3lib\class.t3lib_div. php on line 2309"
Честно говоря это предупреждение закрывает пол экрана и не даёт возможности сохранять изменения так как елементы страницы накладываются друг на друга.
И ещё интересное наблюдение База данных у меня UTF8 а браузер в котором просматриваю сотворённое - кирилические символы отображает только в Win-1251.
Версии:
Typo3 4.2.3
PHP 5.1.4
Apache 1.3.35
CGI 1.1
MySQL 4.1.7
помоему Вам не надо ничего патчить и не надо вообще читать эту ветку - она не касается Вашей ситуации
Спасибо.
Но ведь ошибка в админке присутствует в любом случае
В админке вылетает новая ошибка "Warning: xml_parser_set_option() [function.xml-parser-set-option]: Unsupported target encoding "windows-1251" in e:\and-you.su\CMS\typo\UTF8\htdocs\t3lib\class.t3lib_div. php on line 2308"
И так и не ясен вопрос с кодировкой
База данных у меня UTF8 а браузер в котором просматриваю сотворённое - кирилические символы отображает только в Win-1251.
Должен поправиться ошибка появляется в руссифицированном варианте админки.
Пропатчил файл "class.t3lib_div.php" он почему то патчится с ошибками.
мне кажется в этом твоя проблема.
у меня было тоже самое (патчился ошибками.) моё решение описано на предидущей странице
спасибо за патч, все исправилось)
Работает на vBulletin® версия 3.8.1. Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot