Друзья помогите, совсем запарился с кодировкой, начну по порядку:
Виндовый хостинг
сайт в UTF8
CGI приложение принимает запрос полученный скажем через $REQUEST_URI вот это*:
%D1%82%D1%83%D1%82_%D1%81%D0%BE%D0%B1%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE_%D1%81%D0%B0%D0%BC_%D0%B7%D0%B0%D0%BF%D1%80%D0%BE%D1%81
после декодирования (URLDecoder) получаю это*:
тут_ÑобÑтвенно_Ñам_запроÑ
вот этим (в разных вариациях) пытаюсь привести в нормальный вид но все тщетно :xz:
Procedure.s Unicode2Ansi(*Unicode,UniLen.l)
;/ *Unicode [in] Points To the wide-character string To be converted.
;/ UniLen [in] Specifies the number of wide characters in the string pointed to by the lpWideCharStr parameter. If this value is -1, the string is assumed to be null-terminated and the length is calculated automatically. The length will include the null-terminator.
;/ string [out] The translated (ANSI) string.
Protected Ansi.s,AnsiLen.l
AnsiLen = WideCharToMultiByte_(#CP_ACP,0,*Unicode,UniLen,0,AnsiLen,0,0)
If AnsiLen
Ansi = Space(AnsiLen)
If WideCharToMultiByte_(#CP_ACP,0,*Unicode,UniLen,@Ansi,AnsiLen,0,0);"•",#True)
ProcedureReturn Ansi
EndIf
EndIf
ProcedureReturn ""
EndProcedure
самое интересное что $SCRIPT_NAME приходит в нормальной кодировке, проблема наблюдается только в POST\GET запросах
1) как можно это преобразовать?
2) может апачка криво настроена?