Вы не зашли.
Главная » PHP » Ошибка. Curl
#1. WapStyle Off (3)
Участник
2010.10.09 19:07
Вот что мне пишет CURL

Warning: curl_setopt(): You must pass either an object or an array with the CURLOPT_HTTPHEADER, CURLOPT_QUOTE, CURLOPT_HTTP200ALIASES and CURLOPT_POSTQUOTE arguments ...

Мне нужно послать на сайт cookies методом POST c с передачей нескольких http заголовков.
#2. Gemorroj Off (107)
Administrator
2010.10.09 19:07
код может таки стоит написать?
#3. WapStyle Off (3)
Участник
2010.10.09 20:08
Код:
$header2 = 'Cookie: remixsid='.$remixsid.';remixmid='.ID.'; remixemail='.urlencode(EMAIL).'; remixpass='.md5(PASS);
 
$curl2 = curl_init();
curl_setopt($curl2, CURLOPT_URL, $url);
curl_setopt($curl2, CURLOPT_HTTPHEADER, $header2);
//curl_setopt($curl2, CURLOPT_HEADER, true);
curl_setopt($curl2, CURLOPT_POST, true);
curl_setopt($curl2, CURLOPT_TIMEOUT, 12);
$data = curl_exec($curl2);
curl_close($curl2);
Я плохо знаю curl этот код может быть неверным.
#4. Gemorroj Off (107)
Administrator
2010.10.09 20:08
$header2 должен быть массивом.
#5. WapStyle Off (3)
Участник
2010.10.09 21:09
А можно просто иправленный код  )) плз
Добавлено спустя   4 минуты  19 секунд:
по мне Curl как первоклашке php big_smile
#6. WapStyle Off (3)
Участник
2010.10.09 23:11
Curl я разобрался

Теперь ещё один вопрос как сделать пороще данные коды

Код:
for($i = $start; $i<$l; ++$i){
$a[$i][1] = substr($a[$i][1],0,stripos($a[$i][1],")"));
$a[$i][1] = substr($a[$i][1],stripos($a[$i][1],",")+1);
$a1 = substr($a[$i][1],0,stripos($a[$i][1],","));
$a[$i][1] = substr($a[$i][1],stripos($a[$i][1],",")+1);
$a2 = substr($a[$i][1],0,stripos($a[$i][1],","));
$a[$i][1] = substr($a[$i][1],stripos($a[$i][1],",")+1);
$a3 = substr($a[$i][1],0,stripos($a[$i][1],","));
$a3 = substr($a3, 1 , strlen($a3)-2);
}
Код:
while(stripos($data,"operate(") !== false){
$i++;
$a[$i][1] = substr($data, stripos($data,"operate(") + 8, 100);
$data = substr($data, stripos($data,"operate(") + 50);
$a[$i][2] = substr($data, stripos($data,'<b id="performer'));
$a[$i][2] = substr($a[$i][2], stripos($a[$i][2],">")+1);
$a[$i][3] = substr($a[$i][2], stripos($a[$i][2],"<"));
$a[$i][2] = substr($a[$i][2], 0, stripos($a[$i][2],"<"));
$a[$i][3] = substr($a[$i][3], stripos($a[$i][3],'<span id="title'));
$a[$i][3] = substr($a[$i][3], stripos($a[$i][3],">")+1);
if($a[$i][3][0] == '<')$a[$i][3] = substr($a[$i][3], stripos($a[$i][3],">")+1);
$a[$i][4] = substr($a[$i][3], stripos($a[$i][3],"<"));
$a[$i][3] = substr($a[$i][3], 0, stripos($a[$i][3],"<"));
$a[$i][4] = substr($a[$i][4], stripos($a[$i][4],'<div class="duration">')+22);
$a[$i][4] = substr($a[$i][4], 0, stripos($a[$i][4],"<"));
}
А то чёто больно сильно намутано.
Отредактировано WapStyle (2010.10.09 23:11)
#7. Gemorroj Off (107)
Administrator
2010.10.10 10:10
смысл кода сходу не улавливаю. а так в принципе, оформи грамотно и сойдет.
#8. WapStyle Off (3)
Участник
2010.10.10 11:11
Вот вприципе что получилось

http://test.openserv.ru/?search=rammstein

Поисковик полность на Curl

Вот из-за кода который выше время выполнения скрипта 1.2968
#9. WapStyle Off (3)
Участник
2010.10.10 11:11
Кстати верно ли?

Получение куков
Код:
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
Отправка куков
Код:
curl_setopt ($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
#10. Gemorroj Off (107)
Administrator
2010.10.10 12:12
WapStyle, технически верно, но в принципе, делать нужно не так. Кука передается в заголовках, как юзерагент, скажем, ты же не хранишь юзерагент в файле, верно? Так и передавай кукисы напрямую в заголовках. Т.е. в массив $headers2 добавь элемент типа $headers2[] = 'Cookie: var=value'; и все.
Страниц: 1 2 3 4 Все
Главная
WEB
PunBB Mod v0.6.2
0.019 s