[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: curl - как сэмулировать post запрос
John Cena
доброе время суток. Сегодня весь день мучаюсь с попыткой имитации отправки формы.

вот ф-ция которую я использую:


function getFromUrl($arr, $url = 'http://website.com/index.php?route=module/filter_auto/autocomplete'){
$ch = curl_init();
$param = '';
foreach($arr as $key => $val)$param .= $key.'='.$val.'&';
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER,
array(
'Host:website.com',
'User-agent:Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13',
'Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language:ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3',
'Accept-Encoding:gzip,deflate',
'Accept-Charset:windows-1251,utf-8;q=0.7,*;q=0.7',
'Keep-Alive:115',
'Connection:keep-alive',
'Referer:http://website.com/',
'Cookie:language=ru; currency=uah;',
'X-Livetool:Yes'
));
curl_setopt($ch, CURLOPT_POSTFIELDS,$param);
ob_start();
curl_exec($ch);
$full = ob_get_contents();
$this->headers = curl_getinfo($ch, CURLINFO_HTTP_CODE);
//var_dump(curl_getinfo($ch));
curl_close($ch);
ob_clean();
return $full;
}


когда я захожу из браузера, форма нормально сабмитится на этот адрес http://website.com/index.php?route=module/...to/autocomplete. но когда использую эту ф-цию ничего не возвращается. точнее возвращается 302 и все.

это парамтры заголовков которые посылает мой браузер:

Заголовки ответа
Server nginx
Date Thu, 20 Dec 2012 16:10:01 GMT
Content-Type text/html
Transfer-Encoding chunked
Connection keep-alive
Expires Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma no-cache
Location http://website.com/alfa-romeo-156-2001-1-9.../shiny?s=185/65 R15

Заголовки запроса
Host website.com
User-Agent Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding gzip,deflate
Accept-Charset windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive 115
Connection keep-alive
Referer http://website.com
Cookie language=ru; currency=uah;
X-Livetool Yes


как мне правильно сэмитировать свой браузер в пхп? и что я делаю не так в свой ф-ции?

заранее спасибо за помощь!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.