$user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.2.13) ' . 'Gecko/20101203 Firefox/3.6.13 ( .NET CLR 3.5.30729)'; $cookie = ''; $login = 'qazqaz'; $password = 'qazqaz'; $ch = curl_init(); // true т.к. мы будем отправлять post запрос: curl_setopt($ch, CURLOPT_POST, true); // чтобы сайт думал, что мы - браузер: curl_setopt($ch, CURLOPT_USERAGENT, $user_agent); // ответ сервера будем записывать в переменную curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 10); // по редиректам будем переходить автоматически. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_URL, 'http://login.vk.com/?act=login'); //Формирование запроса таким образом, я счел более наглядным $post = array( 'act' => 'login', 'q' => '', 'al_frame' => '1', 'expire' => '', 'captcha_sid' => '', 'captcha_key' => '', 'from_host' => 'vkontakte.ru', 'email' => $login, 'pass' => $password ); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post)); $answer = curl_exec($ch); /* В $answer нам приходит javascript, который и устанавливает куки с названием: remixsid Нам нужно cпарсить эти 60 символов, идентификатора сессии. с помощью них vkontakte поймет, что мы авторизировались.*/ $sid = substr($answer, strpos($answer, "setCookieEx('sid', '") + 20, 60); $cookie = 'remixsid=' . $sid; curl_setopt($ch, CURLOPT_POST, false); curl_setopt($ch, CURLOPT_COOKIE, $cookie); // укажем страницу, с которой мы получим данные для проверки curl_setopt($ch, CURLOPT_URL, 'http://vkontakte.ru/id107073034'); $answer = curl_exec($ch); preg_match('!id="profile_current_info">((.*?))</div>!si',$answer,$data); //print_r($data); $pars=iconv('cp1251','utf-8',$data[1]); //echo $pars; $p = file_get_contents('/home/megido/l.dat'); if($p != $pars) $f = @fopen('/home/qazqaz/l.dat','w+'); fwrite($f,$pars); fclose($f); //echo $answer; curl_close($ch);