Forum Webscript.Ru
Общие => Базы данных => Тема начата: Elenka от 07 Июня 2005, 00:55:33
-
пример: парсим русский сайт, добавляем в БД результат, ошибка:
ц╔ц╚ц╔цґцґц╝ц╛ цєц╗ц═ц╞ц═цїц╝цґц╔ цЇц═ц╠ц╡ц╝ц╡
DBD::Pg::st execute failed: ERROR: invalid byte sequence for encoding "UNICODE": 0xec20e4
ц╡ц╟ц═цґц╠цЄц╝ц╟ц╛ц═ц╡ц╝ц╟цґц╝ц╔ ціц╔ц╚ц╔цїц╝ ц╒ц╝ц╝ц║ц╧ц╔ цґц╔ ц╞ц╝цєц╒ц╔ц╟ціц╔цґц╝ ц╗ц./h.pl
DBD::Pg::st execute failed: ERROR: invalid byte sequence for encoding "UNICODE": 0xec20e4
что нужно для многоязыковой поддержки ? сохраняю в юникоде
-
Elenka
сохраняю в юникоде
каким образом?
-
а каким нужно ?
спасибо
-
а каким нужно ?
ты лучше код покажи...
-
последовательность простая, парсим сайт, квотим нужный текст и добавляем в БД, что нужно добавить к этому ? спасиб ;)
$text=get(\'http://www.russiansite.ru\');
quote($text)
insert into table (text)
-
Elenka
перед insert: SET CLIENT_ENCODING TO \'WIN\'
-
гм, а если текущий язык мне неизвестен ?
1. отпарсили инглиш - сохранили
2. отпарсили русский - сохранили
3. отпарсили французский - сохранили
...
.
есть подобные решения ?
-
при добавлении французского вылетает вот что:
DBD::Pg::st execute failed: ERROR: invalid byte sequence for encoding "UNICODE": 0xe96361
-
http://www.postgresql.org/docs/8.0/interactive/multibyte.html#MULTIBYTE-TRANSLATION-TABLE
-
для этого надо заранее знать кодировку текущего декста, к примеру мне надо сохранить японский, для этого заранее надо определить, что символы именно EUC_JP и потом уже поставить
SET CLIENT_ENCODING TO \'EUC_JP\';
только непонятно как это сделать... :(