Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Win1251 в URLVariables (http://www.flasher.ru/forum/showthread.php?t=153313)

rezzanator 31.03.2011 18:36

Win1251 в URLVariables
 
Всем привет. Прошу подсказать, проблема в следующем

Есть сервер(поправить в его скриптах возможности нет) отправляем параметры ПОСТом на страницу, через AS.

На странице следующий код <input type="submit" value="Накладные закупок" name="mode_id">


Нужно отправить на сервер. На сервере кодировка windows-1251.

Отправляю соответственно через
Код AS3:

variables = new URLVariables();
variables.mode_id = 'Накладные закупок';

уходит соответственно в utf8.
Перекодирую в windows-1251 получается нормально на сервер уходит, а AS все равно перекодирует как то по своему.

На сервере вот должно уходить вот так
"%CD%E0%EA%EB%E0%E4%ED%FB%E5+%E7%E0%EA%F3%EF%EE%EA"
а отправляет
"%25CD%25E0%25EA%25EB%25E0%25E4%25ED%25FB%25E5%2B%25E7%25E0%25EA%25F3%25EF%25EE%25EA".

Подскажите как нормально отправить.

Hidest 31.03.2011 21:12

Посмотрите в сторону top-level функции encodeURI (). Если внимательно посмотрите, то секвенция получается правильной, вот только символ "%" дополнительно кодируется в url-encoded вид "%25". Сталкивался с такой проблемой в одной забугорной поделке.

wvxvw 01.04.2011 04:01

Лучше, чтобы не мучатся, заставить идиотов, которые принимают данные в cp1251 переделать по-нормальному. Потому, что любой нерусский клиент пришлет на сервер что-то "непонятное". Это значит, что данные присланные на сервер будут безвозвратно утеряны.

rezzanator 01.04.2011 13:09

Цитата:

Сообщение от Hidest (Сообщение 985664)
Посмотрите в сторону top-level функции encodeURI(). Если внимательно посмотрите, то секвенция получается правильной, вот только символ "%" дополнительно кодируется в url-encoded вид "%25". Сталкивался с такой проблемой в одной забугорной поделке.

И как справился с этой проблемой?Как бы избавиться от %25!?


wvxvw, Если можно было поменять на сервере. я бы сделал это в первую очередь.


Часовой пояс GMT +4, время: 22:41.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.