отправка данных через curl ПОСТ запросом

Статус
В этой теме нельзя размещать новые ответы.

alex_zp

Новичок
отправка данных через curl ПОСТ запросом

Есть задача - есть сайт _http://www.privatbank.ru/info/index7.stm?fileName=e3_3_10_10r.html,необходимо прикрутить к форме на другом сайте,отправку данных по указанной выше ссылке.После того как зарегишся по указан. ссылке происходит передача этих данных вот сюда _http://privatbank.ua/info/tranlator/translator_privat_credit.html,это как бы итог,когда переданные данные уже обработались,так вот я выяснил каким должна быть строка для передачи итогой форме(через сниффер) type=creditcard_mp&ldap=privatbankru&name=%C8%E2%E0%ED+%CF%E5%F2%F0%EE%E2%E8%F7+%C8%E2%E0%ED%EE%E2%ED%EE%E2&tel_m=%2B79261234565&comment=%E0%EF%FB%E2%E0%EF+%E2%E0%EF%FB%E2%E0%EF - где-то такого плана,2 поля скрытых,type и ldap,также видные поля - имя,номер и коментарий.
Привожу код как я отправляю данные на эту форму
$str_post_zaprosa = "type=".$type."&ldap=".$ldap."&name=".urlencode($fio)."&tel_m=".$telephon."&comment=".urlencode($coment_rez);
//--------------------------------------------------------------
// ставим, что наш броузер читает только файлы в html формате
$header [] = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" ;
$header [] = "windows-1251,utf-8;q=0.7,*;q=0.7";
// говорим, что броузер не читает файлы в gzip формате
$header [] = "Accept_encoding: identity";
$header [] = "Accept_language: en-us,en;q=0.5";
$header [] = "Keep-Alive:300";
$header [] = "Content-Type:application/x-www-form-urlencoded";
$header [] = "Connection: keep-alive";
$header [] = "Cache-Control: no-store, no-cache, must-revalidate";
$header [] = "Keep_alive: 300";
$header [] = "Expires: Thu, 01 Jan 1970 00:00:01 GMT";
//--отправили данные форме-----
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://privatbank.ua/info/tranlator/translator_privat_credit.html");
curl_setopt ( $ch , CURLOPT_HTTPHEADER , $header );
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208');
curl_setopt ( $ch , CURLOPT_SSL_VERIFYPEER, 0 );
curl_setopt($ch, CURLOPT_REFERER , "http://www.privatbank.ru/info/index7.stm?fileName=e3_3_10_10r.html");
curl_setopt($ch, CURLOPT_POSTFIELDS,$str_post_zaprosa);
curl_setopt($ch, CURLOPT_COOKIEJAR,$_SERVER['DOCUMENT_ROOT'].'/cookiefile.txt');
$result = curl_exec($ch);
if (curl_errno($ch))
{
echo curl_error($ch) . "(" . curl_errno($ch) . ")";
}
//-----------------------------------------------
в итоге постоянно получаю
Код ошибки Текст ошибки
0518 Тип продукта не определен
хотя скрытые параметры то передаю ТОЧНО,они в пост запросе есть,даже пробовал просто передавать строку такую же как получить от снифера при регистрации через браузер всёравно та же ошибка вылазить.ПОМОГИТЕ ПЛИЗ!!разобраться с этим вопрос
 

mity

Новичок
Какие сомнительные у Вас задачи. Не пробовали к Web мастерам этого сайта обращаться?

Смотрите снифером в чём разница между вашими запросами и запрсами браузера. Может они дополнительно проверяют факт загрузки какой нибудь картинки. Дабы защится от таких запросов с курлом.

Я бы вообще не стал проводить подобные сомнительные эксперименты с крупным банком.
 

alex_zp

Новичок
так в том то и дело,что скопировал строку запроса из снифера и отправил такую же строку через КУРЛ и на выходе получаю тот же вариант,вот знать что не так..а то такое ощущение что вообще страничка не воспринимает переменные мои,не пробовал с Web мастерами общаться,не знаю что и куда писать и звонить нада..
 

mity

Новичок
Там наверняка есть куки, когда Вы итоговую форму передаёте у Вас куки пустые.
Попробуйте сначала прогрузить страницу с формой, получитеть её куки и отправить post запрос уже с куками.
а контактный email там указан, напишите письмо, объясните зачем Вам и ИМ это нужно. Может помогут.
 

alex_zp

Новичок
снифером смотрел,куков не передаётся.а куда писать ? а то я адреса не увидел
 

alex_zp

Новичок
Автор оригинала: prolis
PHP:
curl_setopt($ch, CURLOPT_POST, 0);
и что это значит ? я пробовал и 0 и 1 ,правда теперь со значением 1 выдаёт другую ошибку - "что заявка на такого то клиента уже была подана ранее,хотя этого не может быть"
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху