Появилась надобность быть постоянно онлайн на одном портале showbiza . net (не реклама) на Сurl под крон на сервак.
Вот сваял такой вот кодик (но чето не то сваял):
<?php
header("Content-Type: text/html; charset=UTF8");
include_once('DudeCurl.php');
$curl = new DudeCurl();
$data = $curl->init("http://ua.showbiza.net/login")->exec();
$str_replace_search = array("\n", " ");
$str_replace_replace = array("", "");
$data = str_replace($str_replace_search, $str_replace_replace, $data);
//preg_match_all("#.*?id='s'value='(.*?)'.*?#is", $data, $m);
//$sid = $m['1'];
preg_match("#Location: (.*)#u",$result,$arr);
$url=trim($arr[1]);
$post = "email=email@gmail.com&password=password&remember_me=1";
$curl->init("http://ua.showbiza.net/login")->opts('post',$post)->exec();
$data = $curl->init("http://ua.showbiza.net/login")->exec();
print $data;
$url = "http://ua.showbiza.net/login";
$ch = curl_init();
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);// allow redirects
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt"); //Из какого файла читать
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt"); //В какой файл записывать
curl_setopt($ch, CURLOPT_URL, $url); // куда отправляем пост запрос
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable
curl_setopt($ch, CURLOPT_TIMEOUT, 3); // times out after 4s
curl_setopt($ch, CURLOPT_POST, 1); // set POST method
$result = curl_exec($ch);
print_r(curl_getinfo($ch));
print "\n\ncURL error number:" .curl_errno($ch);
print "\n\ncURL error:" . curl_error($ch);
curl_close($ch);
?>
Плиз хелп ми, где я накосячил?
Спустя 18 часов, 43 минуты, 15 секунд (22.07.2012 - 15:22) alexbel2404 написал(а):
тот же вопрос, где ты накосячил? суть проблемы то?
Спустя 6 часов, 19 минут, 53 секунды (22.07.2012 - 21:42) Oliver Varnce написал(а):
Короче говоря. Сам механизм онлайна состоит в таком:
1. заходим на /login
2. вводим логин паролью
3. после форма отправляется все в тот же /login
4. если такой юзер есть переадресовует в анкету юзера автоматом, и только тогда юзер появляется онлайн.
С данным скриптом все работет до 4го пункта, тоесть заходит но не происходит авто-переадресация и , соответственно, анкета не онлайн.
CURLOPT_FOLLOWLOCATION поставил на true , но переадресация не работает в автомате.
1. заходим на /login
2. вводим логин паролью
3. после форма отправляется все в тот же /login
4. если такой юзер есть переадресовует в анкету юзера автоматом, и только тогда юзер появляется онлайн.
С данным скриптом все работет до 4го пункта, тоесть заходит но не происходит авто-переадресация и , соответственно, анкета не онлайн.
CURLOPT_FOLLOWLOCATION поставил на true , но переадресация не работает в автомате.
Спустя 2 дня, 10 часов, 31 минута, 32 секунды (25.07.2012 - 08:13) Oliver Varnce написал(а):
ну что, вариантов нет?
Спустя 1 день, 12 часов, 31 минута, 28 секунд (26.07.2012 - 20:45) Oliver Varnce написал(а):
Ей народ!!! Вы что вымерли?
Спустя 1 час, 48 минут, 53 секунды (26.07.2012 - 22:34) vital написал(а):
Цитата (Oliver Varnce @ 26.07.2012 - 19:45) |
Ей народ!!! Вы что вымерли? |
в 8 вечера по времени форума всем просто на тебя насрать. Такие дела =\
Спустя 2 часа, 1 минута, 53 секунды (27.07.2012 - 00:36) neadekvat написал(а):
Переадресация происходит с какими-нибудь параметрами в адресной строке или как?
Если нет, делай запрос на логин, а потом запрос на личный кабинет и не парься с переадресацией.
Если нет, делай запрос на логин, а потом запрос на личный кабинет и не парься с переадресацией.
Спустя 18 часов, 5 минут, 42 секунды (27.07.2012 - 18:41) Oliver Varnce написал(а):
да я так пробовал. В том то и прикол что куки идентифицирующие юзера записываются только тогда когда уже произойдет переадресация
_____________
мой хостинг - GlobalNET.com.ua