Есть сайт, при подключении к нему curl вылетает такая ошибка SYQUERY_OKsyquery.page.findComponent('regForm').logonSuccess();
Где именно эта ошибка вылетает? В ответе сервера или PHP выкидывает ошибку парсинга? Я подозреваю, что это сайт, к которому вы подключены работает на SYQUERY, и там, чтобы зайти на него, нужно вводить логин/пароль.
Нужно просто разобраться как устроена форма логина на той странице и симулировать ввод логина и пароля. Вобщем граббером заголовков пользуйтесь (Firefox Firebug или Opera Firefly).
Вроде передал все заголовки которые были в запросы, выводит: SYQUERY_OK$('#syq1-newMes').val('0'); $('#syq1-moderation').remove(); syquery.page.findComponent('regForm').logonSuccess(); Вот код: Код (Text): <? $ch = curl_init(); $uagent = "Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)"; $head=array("Host=statusmania.ru", "Accept=*/*", "Accept-Language=ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3", "Accept-Encoding=gzip,deflate", "Accept-Charset=IBM866,utf-8;q=0.7,*;q=0.7", "Keep-Alive=115", "Connection=keep-alive", "Content-Type=application/x-www-form-urlencoded; charset=UTF-8", "X-Requested-With=XMLHttpRequest", "Referer=http://statusmania.ru/", "Cookie=__utma=64267757.1405483162.1293998484.1294923210.1295012680.10; __utmz=64267757.1294853629.8.4.utmcsr=vkontakte.ru|utmccn=(referral)|utmcmd=referral|utmcct=/vova_bober; favorite=; PHPSESSID=j0sj6u88us4gosbsu8bb21v805; __utmb=64267757.4.10.1295012680; __utmc=64267757"); curl_setopt($ch, CURLOPT_URL, "http://statusmania.ru/"); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_ENCODING, ""); curl_setopt($ch, CURLOPT_HTTPHEADER, $head); curl_setopt($ch, CURLOPT_USERAGENT, $uagent); curl_setopt($ch, CURLOPT_TIMEOUT, 120); curl_setopt($ch, CURLOPT_FAILONERROR, 1); curl_setopt($ch, CURLOPT_AUTOREFERER, 1); curl_setopt($ch, CURLOPT_COOKIEJAR, "cookies6.txt"); curl_setopt($ch, CURLOPT_COOKIEFILE,"cookies6.txt"); curl_setopt($ch, CURLOPT_POST,1); curl_setopt($ch, CURLOPT_POSTFIELDS,"SYQUERY_POSTBACK=1&SYQUERY_ID=regForm-logon-b&SYQUERY_EVENT=click®Form-logonLogin=agent669212®Form-logonPassword=669212®Form-regLogin=®Form-regPassword=®Form-regEmail=®Form-remPassLogin=®Form-remPassEmail="); $output = curl_exec($ch); curl_close($ch); print $output; ?>
И еще так вопрос не в тему, если запущен cron с интервалом в 1 минуту, от страница в браузере будет обновляться каждую минуту?
vodorod Нужно разбираться что делает javascript там. Что выполняет функция logonSuccess(). Ковыряйте сорсы яваскрипта. Если запущен крон с интервалом в 1 минуту, то крон будет запускать ваш скрипт каждую минуту. Если ваш скрипт эмулирует переход браузером по страничке, то да, будет эмулироваться обновление страницы каждую минуту. Только если вы пытаетесь накрутить реферала какого-то, что мол вы странички просматриваете, то скорее всего ничего не получится. Там должны куки обновляться и интервал обновления должен быть рандомным, а то вас быстро засекун и забанят. Легче написать прогу, которая будет эмулировать клики мышкой, чем обращение к серверу через PHP.