Просмотр полной версии : Ошибка class.t3lib_div.php
d31m07y1988
29.12.2007, 20:18
Warning: xml_parser_set_option() [function.xml-parser-set-option]: Unsupported target encoding "Windows-1251" in T:\home\virtual\typo\t3lib\class.t3lib_div.php on line 2174
Что делать, стоит typo 4.1.5
Версия сервера приложений: TopServer 2.1
Веб-сервер: Apache 2.0.59
PHP: PHP 5.1.6
PERL: PERL 5.6.1
MySQL: MySQL 5.0.18-nt-max
phpMyAdmin: phpMyAdmin 2.6.1
SQLite: SQLite 2.8.17
SQLiteManager: SQLiteManager 1.2.0
FTP: SlimFTPd 3.17
Sendmail: Virtual Sendmail Stub
Библиотеки PHP : BCmath, Calendar, Date, FTP, GD2, MySQL, ODBC, pcre v6.6, Session, Hash, Com_dotnet, Ctype, DOM, XML, LibXML, SimpleXML, XMLreader, XMLwriter, Zlib, iconv, Reflection, SPL, Tokenizer, WDDX (встроенные библиотеки)
+ MySQL, MySQLi, SQLite, GMP, Sockets, bzip2, XSL (библиотеки PECL)
было. причин так и не понял - база в утф, шаблоны в утф... плюнул и пропатчил. то ли на этой, то ли на строчку перед написал, если память не изменяет $charset = 'utf-8', точное имя переменной посмотрите в коде.
Шаблон должен быть в utf-8, база в utf-8 + в DS XML тоже должно быть написано "utf-8".
Так и было, в этом-то вся и ерунда.
Первая сторока ДС
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>, все локальные параметры базы и соединения - утф (правда все глобальные - 1251), ПХП 5.2.2, шаблоны изначально создавались в утф, в базе - чистый утф, ТВ 1.3.3, форсечарсет конечно стоит ... А варнинг все равно вылезал!
вобщем, обработку первой строки я просто отключил
elseif ((double)phpversion()>=5) {
// $match = array();
// preg_match('/^[[:space:]]*<\?xml[^>]*encoding[[:space:]]*=[[:space:]]*"([^"]*)"/',substr($string,0,200),$match);
// $theCharset = $match[1] ? $match[1] : ($TYPO3_CONF_VARS['BE']['forceCharset'] ? $TYPO3_CONF_VARS['BE']['forceCharset'] : 'iso-8859-1');
$theCharset = 'utf-8';
xml_parser_set_option($parser, XML_OPTION_TARGET_ENCODING, $theCharset); // us-ascii / utf-8 / iso-8859-1
d31m07y1988
31.12.2007, 00:02
Так и было, в этом-то вся и ерунда.
Первая сторока ДС
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>, все локальные параметры базы и соединения - утф (правда все глобальные - 1251), ПХП 5.2.2, шаблоны изначально создавались в утф, в базе - чистый утф, ТВ 1.3.3, форсечарсет конечно стоит ... А варнинг все равно вылезал!
вобщем, обработку первой строки я просто отключил
elseif ((double)phpversion()>=5) {
// $match = array();
// preg_match('/^[[:space:]]*<\?xml[^>]*encoding[[:space:]]*=[[:space:]]*"([^"]*)"/',substr($string,0,200),$match);
// $theCharset = $match[1] ? $match[1] : ($TYPO3_CONF_VARS['BE']['forceCharset'] ? $TYPO3_CONF_VARS['BE']['forceCharset'] : 'iso-8859-1');
$theCharset = 'utf-8';
xml_parser_set_option($parser, XML_OPTION_TARGET_ENCODING, $theCharset); // us-ascii / utf-8 / iso-8859-1
А это где?
d31m07y1988
31.12.2007, 00:05
А что если я хочу в windows-1251 а не в utf-8
в фак-е лежит патч Павла Антонова, разбирайтесь.
и учите матчасть, xml parser в ПХП 5 с цп1251 не работает в принципе.
"это" в районе строки 2174
d31m07y1988
01.01.2008, 13:11
нееее, все, разобрался. Проблема была в mysql, он по умолчанию создавал базу в win-1251.
Сейчас все в utf-8. Пытаюсь хоть какой-нибудь шаблон поставить
d31m07y1988
01.01.2008, 18:31
Data Structure ERROR: No source value in fieldname "tx_templavoila_ds"
Что делать?
Работает на vBulletin® версия 3.8.1. Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot