POST запрос (http.Send) через WinHttp ,Кодировка

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Vyazikov
Начинающий
Начинающий
 
Сообщения: 16
Зарегистрирован: 14.01.2009 (Ср) 12:27

POST запрос (http.Send) через WinHttp ,Кодировка

Сообщение Vyazikov » 21.12.2012 (Пт) 15:03

Всем привет.
Столкнулся с такой проблемой, в интернете ответа не нашел(
нужно передать данные на скрипт PHP методом POST.

Ну с этим я справился, подключаю рефференс Microsoft WinHTTP Services, version 5.1 пишу код

Код: Выделить всё
Private Sub Command1_Click()
Dim http As WinHttpRequest
Set http = New WinHttpRequest
http.Open "POST", "мой скрипт.php", False 'Replace LINK with the php page who will get data .

http.SetRequestHeader "User-Agent", "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.9.168 Version/11.51"
http.SetRequestHeader "Accept-Charset", "UTF-8"
http.SetRequestHeader "Cache-Control", "no-cache"
http.SetRequestHeader "Keep-Alive", "300"
http.SetRequestHeader "Connection", "Keep-Alive"
http.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"

http.Send "data=привет"

RichTextBox1.Text = http.ResponseText

End Sub



мой скрипт.php тупо выводит полученные данные

Код: Выделить всё
<?php
echo $_POST['data'];
?>


и скрипт получает вот что. i»???N??????µN? вместо "привет"
проблема в кодировке в момент отправки POST запроса ну или в момент его получения на сервере,
как решить эту проблему?


вот с этим я тоже игрался, не помогло
Код: Выделить всё
http.SetRequestHeader "Accept-Charset", "Windows-1251"
Последний раз редактировалось Vyazikov 21.12.2012 (Пт) 15:22, всего редактировалось 1 раз.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: POST запрос (http.Send) через WinHttp ,Кодировка

Сообщение Хакер » 21.12.2012 (Пт) 15:04

Что на уме у тех, кто вместо [code] использует [icode] и получает блевотный результат?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Vyazikov
Начинающий
Начинающий
 
Сообщения: 16
Зарегистрирован: 14.01.2009 (Ср) 12:27

Re: POST запрос (http.Send) через WinHttp ,Кодировка

Сообщение Vyazikov » 21.12.2012 (Пт) 15:23

вы правы, я чето и не заметил нормальную КОДЕ сразу, она в другой стороне))

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: POST запрос (http.Send) через WinHttp ,Кодировка

Сообщение Хакер » 21.12.2012 (Пт) 15:24

Так лучше.

Хорошо, теперь вопрос: откуда ты взял вот это:
Vyazikov писал(а):i»???N??????µN?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Vyazikov
Начинающий
Начинающий
 
Сообщения: 16
Зарегистрирован: 14.01.2009 (Ср) 12:27

Re: POST запрос (http.Send) через WinHttp ,Кодировка

Сообщение Vyazikov » 21.12.2012 (Пт) 15:26

брал это двумя способами.

1-прямо принимающим PHP скриптом записывал полученные данные в файл TXT открывал и видел это
2-выводил скриптом полученыне данные и смотрел вот тут RichTextBox1.Text = http.ResponseText

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: POST запрос (http.Send) через WinHttp ,Кодировка

Сообщение Хакер » 21.12.2012 (Пт) 15:32

Vyazikov писал(а):1-прямо принимающим PHP скриптом записывал полученные данные в файл TXT открывал и видел это

Чем?

Vyazikov писал(а):2-выводил скриптом полученыне данные и смотрел вот тут RichTextBox1.Text = http.ResponseText

Это неправильный способ.


Разговор бессмысленно продолжать, пока ты не прочтёшь и не проникнешься вот этим текстом:
Абсолютный минимум, который каждый разработчик программного обеспечения обязательно должен знать о Unicode и наборах символов
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Vyazikov
Начинающий
Начинающий
 
Сообщения: 16
Зарегистрирован: 14.01.2009 (Ср) 12:27

Re: POST запрос (http.Send) через WinHttp ,Кодировка

Сообщение Vyazikov » 21.12.2012 (Пт) 15:37

1-тестовым редактором стандартным(
2-справедливо... Углублюсь ка я в материал

Vyazikov
Начинающий
Начинающий
 
Сообщения: 16
Зарегистрирован: 14.01.2009 (Ср) 12:27

Re: POST запрос (http.Send) через WinHttp ,Кодировка

Сообщение Vyazikov » 21.12.2012 (Пт) 16:14

как то у меня туго продвигается(

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: POST запрос (http.Send) через WinHttp ,Кодировка

Сообщение iGrok » 21.12.2012 (Пт) 20:00

Vyazikov писал(а):1-тестовым редактором стандартным(

А ты попробуй каким-нибудь шестнадцатеричным. Дальше можно будет подумать, что это за данные, и почему они в таком виде.
label:
cli
jmp label


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Google-бот, Yandex-бот и гости: 40

    TopList