Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

idhttp проблема с кодировкой


NBAH1990 ©   (2013-04-13 07:22:00) 

Windows 7, Delphi XE3

Добрый день. Подскажите что я делаю не так.
begin
 s1:='Privet';
 s2:='Привет';
 s3:=idhttp1.URL.PathEncode('Привет');
 st:='https://stat.g-net.local/support/clo_naryad.mns?act=1&uid=4276&des_nar='+s1+s2+s3+'&dat_clo_dat=11.04.2013&dat_clo_tim=09:45:39&submit=Закрытие наряда';
 IdHTTP1.Get(st);
end;

отсылаю 3 разных строки в одно поле, для проверки. С английскими буквами проблем нет. А вот русские никак не хотят нормально отображаться. Кодировка на сайте windows-1251.
Через Get отсылаю для наглядности.

в общем на сайте это в итоге выглядит как:

Privet??????Привет

Т.е. верно уходят только американские буквы. Есть ещё варианты?


NBAH1990   (2013-04-13 07:41:00) [1]

Проблему решил хитрым путём, вычитал на одном из форумов.

 var str: TStringStream;
begin
 IdHTTP1.Request.ContentType:='application/x-www-form-urlencoded';
 str:= TStringStream.Create;
 str.WriteString('act=1&uid=4276&des_nar=Привет&dat_clo_dat=11.04.2013&dat_clo_ti m=09:45:39&submit=Закрытие наряда');
 IdHTTP1.Post('https://stat.g-net.local/support/clo_naryad.mns',str);
 str.Free;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо