Есть скрипт одного из участников форума, ник geforse Сам скрипт Code: <?php set_time_limit(0); //-----------------// $email = ''; // E-mail $pass = ''; // Пароль $log = "1"; // 1 - Если нужно писать log-файл //-----------------// /* Заходим на главную странцу */ $ch = curl_init("http://vkontakte.ru/index.php"); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox/3.0.4"); curl_setopt($ch, CURLOPT_REFERER, "http://vkontakte.ru/index.php"); curl_setopt($ch, CURLOPT_COOKIEFILE, "./cook7777"); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); $result = curl_exec($ch); /* Если куки "умерли", то авторизовываемся... */ if (preg_match('#l">E(.*?)<#i',$result,$avtoriz)) { $ch = curl_init("http://vkontakte.ru/login.php"); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox/3.0.4"); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, "op=a_login_attempt&email=".urlencode($email)."&pass=".urlencode($pass)."&expire=0"); curl_setopt($ch, CURLOPT_REFERER, "http://vkontakte.ru/index.php"); curl_setopt($ch, CURLOPT_COOKIEJAR, "./cook7777"); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $res_index = curl_exec($ch); /* Пишем об этом */ if ($log == "1") { $fh = fopen("log.txt", "a+"); $success - fwrite($fh, "Авторизация [".date("H:i")."]\r\n"); fclose($fh); } } else { if ($log == "1") { /* ...иначе пишем, что авторизация не потребовалась */ $fh = fopen("log.txt", "a+"); $success - fwrite($fh, "Работа через cookie [".date("H:i")."]\r\n"); fclose($fh); } } /* geforse.name */ ?> На крон скрипт поставил, log.txt пишется что авторизацию по кукам, но проверив, статус мой был оффлайн, хостинг от рбк. Какие мысли?
Нашел на другом сайте пишут что код авторизации поменять на новы и все заработает, кто может попробовать?
Нашел еще такой же скрипт Code: <?php set_time_limit(0); //-----------------// $email = ' '; // E-mail $pass = ' '; // Пароль $log = '1'; // 1 - Если нужно писать log-файл //-----------------// function post($url,$post,$refer) { $ch = curl_init($url); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox/3.0.4"); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); curl_setopt($ch, CURLOPT_REFERER, $refer); curl_setopt($ch, CURLOPT_COOKIEJAR, "./cook"); curl_setopt($ch, CURLOPT_COOKIEFILE, "./cook"); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($ch); return $result; } $result = post('http://vkontakte.ru/',null,'http://vkontakte.ru/'); /* Если куки "умерли", то авторизовываемся... */ if (preg_match('#l">E(.*?)<#i',$result,$avtoriz)) { $result = post('http://login.vk.com/','act=login&success_url=&fail_url=&try_to_login=1&to=&vk=&email='.$email.'&pass='.$pass,'http://vkontakte.ru/login.php?m=1&email='.$email); /* Пишем об этом */ if ($log == "1") { $fh = fopen("log.txt", "a+"); $success - fwrite($fh, "Авторизация [".date("H:i")."]\r\n"); fclose($fh); } } else { if ($log == "1") { /* ...иначе пишем, что авторизация не потребовалась */ $fh = fopen("log.txt", "a+"); $success - fwrite($fh, "Работа через cookie [".date("H:i")."]\r\n"); fclose($fh); } } /* geforse.name */ ?> отличается, как видим прописанно login.vk.com...
Подтверждаю работает! Просто нужен хостинг с которого не ограничен доступ к http://login.vk.com/ Firstvds.ru не подходит для наших целей. у меня madehost.ru
расскажите как это юзать?! Просто залить на какойто хостинг? с указавшими в php скриптом свои данные?
скрипт пишет: Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in /home/тра-ля-ля/online.php on line 19 что ему надо? безопасный режим вроде отключён, курл есть