Гость
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Кодировка в XML / 6 сообщений из 6, страница 1 из 1
07.11.2006, 23:36
    #34110524
I am Razor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в XML
Господа, доброе время суток.

Вот такая проблема возникла: формирую asp-овой страницей xml-документ, указываю кодировку, но после отсылки сгенерённого XML-ника клиенту, в браузере кодировка НЕ ОТОБРАЖАЕТСЯ!!! Наслышан о том, что
Код: plaintext
Set header = dom.createProcessingInstruction("xml","version=""1.0"" encoding=""Windows-1251""")
не отображает кодировку, делаю так:
Код: plaintext
1.
2.
3.
4.
Set header = dom.createProcessingInstruction("xml","version=""1.0""")
Set encoding = dom.CreateAttribute("encoding")
encoding.Value = "Windows-1251"
header.Attributes.SetNamedItem(encoding)
dom.AppendChild(header)
Всё равно не работает. Во-первых броузер грит, что "В текстовом комментарии обнаружен недопустимый знак. Ошибка при обработке ресурса <URL>" - ругается на кириллицу, во-вторых, делаю view source и вижу, что там в теге xml ВСЁ РАВНО(!!!) нету атрибута encoding.

В чём же дело, господа, объясните!!!!!!!!!!!!!!

Как установить кодировку, или, скажем, хотя бы объянить браузеру, что буквы в документе ему известны - это кириллица.

P.S. при генерации страницы ставлю контент тайп = xml, CharSet=Windows-1251
P.P.S Пробовал менять чарсет на UTF-8 - не помогает
...
Рейтинг: 0 / 0
08.11.2006, 10:12
    #34111075
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в XML
Предлагаю не мудрить с DOM, а начать с этого:
dom.loadXML "<?xml version=""1.0"" encoding=""windows-1251""?><root></root>"
А потом к корневой ветке цепляй все остальное. Или вообще генерировать xml-строку.
...
Рейтинг: 0 / 0
08.11.2006, 11:28
    #34111408
michael R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в XML
кодировка скорее всего тебе не поможет

нужно содержимое тэгов и атрибутов преобразовывать
в Unicode символы + все спец -символы (& < > ....)
тогда не будет зависимости от браузера и его установок
тем более xml-строку ты генеришь в asp динамически
...
Рейтинг: 0 / 0
08.11.2006, 14:59
    #34112581
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в XML
надеюсь, что идея понятна :)


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
<% 
Dim s
Dim ret
dim ErrCode 
dim ErrDesc
dim Summa
Dim Articul
Dim Phone
Dim obj
Dim b
Dim Descr
Dim ConfirmAction
Dim TransID
Dim sTime
Dim Account
Dim ConnectionString
Dim TimeOut
Dim CheckTimeout
Dim MakeTimeout

...

s="<?xml version = '1.0' encoding='Windows-1251' ?>" & _
	"<RESPONSE>" & _
	"<OK>" & ret & "</OK>" & _
	"<ERRCODE>" & ErrCode & "</ERRCODE>" & _
	"<ERRDESC>" & ErrDesc & "</ERRDESC>" & _
	"<PHONE>" & Phone & "</PHONE>" & _
	"<PRODUCT>" & Articul & "</PRODUCT>" & _
	"<SUM>" & Summa & "</SUM>" & _
	"<DESCRIPTION>" & Descr & "</DESCRIPTION>" & _
	"<CONFIRM>" & ConfirmAction & "</CONFIRM>" & _
	"<TRANSACTION>" & TransID & "</TRANSACTION>" & _
	"<TIME>" & sTime & "</TIME>" & _
	"</RESPONSE>"

end select
Response.Clear
Response.ContentType = "text/xml"
Response.Write s
%>
...
Рейтинг: 0 / 0
08.11.2006, 18:55
    #34113673
I am Razor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в XML
Большое спасибо. Да, действительно, возможно не стоило мудрить с DOM, генерю всё строкой - работает
...
Рейтинг: 0 / 0
09.11.2006, 11:29
    #34115027
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка в XML
а как ты выводишь документ юзеру?
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Кодировка в XML / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]