
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
06.11.2007, 19:29
|
|||
|---|---|---|---|
|
|||
ServerXMLHTTP Проблема с кодировкой |
|||
|
#18+
ContentType = "text/html; charset=windows-1251" Dim urlExec Dim objSrvHttp Dim url Dim objStream Set objSrvHttp = CreateObject("MSXML2.ServerXMLHTTP.6.0") Set objStream = CreateObject("ADODB.Stream") urlExec="http://meteoinfo.ru/forecasts5000/russia/moscow-area" Call objSrvHTTP.Open ("GET", urlExec, False) objSrvHTTP.setRequestHeader "Content-Type", "text/html" objSrvHTTP.setRequestHeader "charset", "Windows-1251" objSrvHTTP.setRequestHeader "Content-Type", "text/html; charset=Windows-1251" objSrvHTTP.send "" If (200 <> objSrvHTTP.status) Then Else objStream.Type = 2 '1-adTypeBinary, 2-adTypeText objStream.Charset = "Windows-1251" objStream.Open str = objSrvHTTP.responseText Строка str содержит ?????? вместо русских букв. До последнего времени все было нормально, что-то изменилось на сайте meteoinfo.ru Как установить русскую кодировку? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.11.2007, 17:15
|
|||
|---|---|---|---|
ServerXMLHTTP Проблема с кодировкой |
|||
|
#18+
On Tue, 06 Nov 2007 19:29:17 +0300, AvnAvnAvn <nospam@sql.ru> wrote: > objSrvHTTP.setRequestHeader "Content-Type", "text/html" > objSrvHTTP.setRequestHeader "charset", "Windows-1251" > objSrvHTTP.setRequestHeader "Content-Type", "text/html; > charset=Windows-1251" Что это, доктор? Во-первых, Content-Type определяется одним хэдором, который выглядит как третья строчка. А во-вторых, он указывает, в какой кодировке передается тело запроса или ответа. Клиент выставляет этот заголовок, только, если он отправляет данные на сервер (например, методом POST). Клиент указывает, в какой кодировке сервер должен отправить ответ, с помощью хэдера Accept-Charset (а не charset). Если Accept-Charset не поможет, посмотри (objSrvHTTP.getAllResponseHeaders() ), какой Content-Type отдает сервер. -- Здесь у нас туманы и дожди, здесь у нас холодные рассветы, Здесь на неизведанном пути ждут замысловатые сюжеты! Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.11.2007, 20:27
|
|||
|---|---|---|---|
|
|||
ServerXMLHTTP Проблема с кодировкой |
|||
|
#18+
в предыдущем примере выполнил: Call objSrvHTTP.Open ("POST", urlExec, False) call objSrvHTTP.setRequestHeader ("Accept-Charset", "windows-1251") Call objSrvHTTP.send ("") WScript.Echo objSrvHTTP.getAllResponseHeaders() 'возвратил следующее: Date: Thu, 08 Nov 2007 17:19:00 GMT Server: Apache/2.0.54 (Fedora) X-Powered-By: PHP/5.0.4 Set-Cookie: PHPSESSID=p6tqub3bo18hcoupcuuaevd4k6; path=/ Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Connection: close Transfer-Encoding: chunked Content-Type: text/html пробовал также call objSrvHTTP.setRequestHeader ("Content-Type", "text/html; Accept-Charset=windows-1251") или call objSrvHTTP.setRequestHeader ("Content-Type", "text/html") результат никак не изменился Как получить правильгную кодировку? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.11.2007, 06:17
|
|||
|---|---|---|---|
|
|||
ServerXMLHTTP Проблема с кодировкой |
|||
|
#18+
HELP please! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.11.2007, 22:15
|
|||
|---|---|---|---|
ServerXMLHTTP Проблема с кодировкой |
|||
|
#18+
On Tue, 13 Nov 2007 06:17:51 +0300, AvnAvnAvn <nospam@sql.ru> wrote: > HELP please! Сервер не возвращает кодировки в заголовках, ServerXMLHTTP предполагает, что по умолчанию кодировка UTF-8. Печально :( Обязательно использовать meteoinfo.ru? Наверняка можно найти сайт, к-ый возвращает данные в xml. Если нужна не картинка с сайта, а сами данные, то xml будет гораздо проще использовать. -- Здесь у нас туманы и дожди, здесь у нас холодные рассветы, Здесь на неизведанном пути ждут замысловатые сюжеты! Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2007, 08:33
|
|||
|---|---|---|---|
|
|||
ServerXMLHTTP Проблема с кодировкой |
|||
|
#18+
Из других источников информация закачивается (есть и вырезки из html, используется xml), информация с meteoinfo.ru важна для раздела "Официальный прогноз" - чтобы не вырезать ее вручную. IE к примеру при снятом флажке автоопределения кодировки отображает страницу в указанной кодировке. Неужели для ServerXMLHTTP никак нельзя указать нужную кодировку, если WEB-сервер не возвращает указание о своей кодировке в заголовках? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.01.2008, 07:35
|
|||
|---|---|---|---|
|
|||
ServerXMLHTTP Проблема с кодировкой |
|||
|
#18+
http://meteoinfo.ru/forecasts5000/russia/moscow-area примерно с ноября стал отвечать на запрос нужной кодировки и возвращать нужную кодировку "text/html; charset=windows-1251" Теперь точно такае-же та-же проблема с кодировкой на сайте http://www.gismeteo.ru/towns/27612.htm для этого сайта WScript.Echo objSrvHTTP.getAllResponseHeaders() возвращает "text/html" Это администраторы сайтов что-то забывают настроить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.01.2008, 06:30
|
|||
|---|---|---|---|
|
|||
ServerXMLHTTP Проблема с кодировкой |
|||
|
#18+
Возможно ли как-то побороть ситуацию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2008, 17:32
|
|||
|---|---|---|---|
|
|||
ServerXMLHTTP Проблема с кодировкой |
|||
|
#18+
Бился я тут на днях и пришел к такому решению. Исходные данные: Исходник в win-1251. Необходимо передавать национальные символы от клиента на сервер через AJAX в url-запросе и через submit форм. Тестовые браузеры : IE7, Opera8, FF3 В каждый вызов добавляется поле char_set_test="аБвГдЕёЖз" соответственно в AJAX в url а в формах через hidden поле например <input type=hidden name="char_set_test" value="аБвГдЕёЖз">. На сервере после получениия элемента из GET отправляем его в след функцию, которая используя заранее описаное тестовое поле 'char_set_test' выбирает метод кодировки браузера и исправляет пришедший запрос соответственно. function auto_translate( $s ) { $char_set_test = ""; if(array_key_exists('char_set_test', $_GET)) { $char_set_test = $_GET['char_set_test']; } if ( 'аБвГдЕёЖз' == $char_set_test ) { //input in 1251 return $s; } else if( 'аБвГдЕёЖз' == iconv('UTF-8','CP1251',$char_set_test)) { //input in utf-8 return iconv('UTF-8', 'CP1251', $s); } else if( 'аБвГдЕёЖз' == iconv('KOI-8','CP1251',$char_set_test)) { //input in return iconv('KOI-8', 'CP1251', $s); } return $s; } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=22&tablet=1&tid=1455578]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
152ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 453ms |

| 0 / 0 |
