Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
Редактирование профайла Livejournal. Не отправляется POST - запрос |

12.02.2010, 17:33
|
|
Новичок
Регистрация: 23.10.2009
Сообщений: 13
Провел на форуме: 36748
Репутация:
0
|
|
Редактирование профайла Livejournal. Не отправляется POST - запрос
Авторизация удается, но дальше при редактировании профиля форма не отсылается. Пробовал заполнять поля и строкой и массивом.
PHP код:
<?php
$curl = curl_init();
curl_setopt($curl, 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($curl, CURLOPT_URL, 'http://www.livejournal.com/login.bml');
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, 'user=0captain_memo&password=201826');
curl_setopt($curl, CURLOPT_REFERER, 'http://www.livejournal.com');
curl_setopt($curl, CURLOPT_COOKIEJAR, "./cook1");
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($curl);
$data = array('name' => '0captain_memo',
'gender' => 'M',
'month' => '6',
'day' => '02',
'year' => '1988',
'opt_sharebday' => 'A',
'opt_showbday' => 'D',
'opt_showschools' => 'F',
'interests' => 'music',
'bio' => '',
'url' => 'http://google.com',
'urlname' => 'google.com',
'opt_showlocation' => 'Y',
'Widget%5BLocation%5D_country' => 'RU',
'Widget%5BLocation%5D_statedrop' => '58',
'Widget%5BLocation%5D_stateother' => '',
'Widget%5BLocation%5D_city' => '',
'Widget%5BLocation%5D_minimal_display' => '0',
'allow_contactshow' => 'Y',
'opt_whatemailshow' => 'N',
'LJ__Setting__FindByEmail_opt_findbyemail' => 'H',
'LJ__Setting__UserMessaging_opt_usermsg' => 'Y',
'opt_showonlinestatus' => 'F',
'aolim' => '',
'icq' =>'' ,
'yahoo' => '',
'msn' => '',
'jabber' => '' ,
'google_talk' => '',
'skype' => '',
'gizmo' =>'' ,
'last_fm_user' => '',
'txtmsg_security' => 'N',
'txtmsg_provider' => '',
'txtmsg_number' => '',
'opt_hidefriendofs' => 'on',
'opt_disable_vgifts' => 'none',
'lj_form_auth => '.$lj_form_auth[1]);
$data2 = 'lj_form_auth='.$lj_form_auth[1].'&name=cap007&gender=M&month=6&day=02&year=1978&opt_sharebday=A&opt_showbday=D&opt_showschools=F&interests=music&bio=&url=http://google.com&urlname=google.com&opt_showlocation=Y&Widget%5BLocation%5D_country=RU&Widget%5BLocation%5D_statedrop=58&Widget%5BLocation%5D_stateother=&Widget%5BLocation%5D_city=&Widget%5BLocation%5D_minimal_display=0&allow_contactshow=Y&opt_whatemailshow=N&LJ__Setting__FindByEmail_opt_findbyemail=H&LJ__Setting__UserMessaging_opt_usermsg=Y&opt_showonlinestatus=F&aolim=&icq=&yahoo=&msn=&jabber=&google_talk=&skype=&gizmo=&last_fm_user=&txtmsg_security=N&txtmsg_provider=&txtmsg_number=&opt_hidefriendofs=on&opt_disable_vgifts=none';
curl_setopt($curl, CURLOPT_REFERER, 'http://www.livejournal.com/');
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_URL, 'http://www.livejournal.com/manage/profile');
$result= curl_exec($curl);
echo $result;
curl_close ($curl);
?>
Помогите найти ошибку
Последний раз редактировалось rainboww; 27.02.2010 в 16:41..
|
|
|

12.02.2010, 17:41
|
|
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме: 2238549
Репутация:
1318
|
|
А что в результате возвращается?
|
|
|

12.02.2010, 17:59
|
|
Новичок
Регистрация: 23.10.2009
Сообщений: 13
Провел на форуме: 36748
Репутация:
0
|
|
Возвращается страница редактирования профиля под моим логином и все! Ни сообщения об ошибке в заполнении формы, ни соотв сообщения об успехе - просто форма с полями. Но в жж эту страницу может видеть только уже авторизированный юзер, так што типа половину пути правильно прошли
Последний раз редактировалось rainboww; 13.02.2010 в 03:31..
|
|
|

12.02.2010, 20:40
|
|
Участник форума
Регистрация: 15.01.2009
Сообщений: 158
Провел на форуме: 469704
Репутация:
26
|
|
Держи полностью готовая функция авторизации:
PHP код:
function login( $login, $password )
{
$result = post( 'http://www.livejournal.com/login.bml', null, 'http://www.livejournal.com/' );
preg_match( '#th" value="(.*?)"#i', $result, $lj_form_auth );
preg_match( '#l\' value=\'(.*?)\'#i', $result, $chal );
$result = post( 'http://www.livejournal.com/login.bml?ret=1', 'lj_form_auth=' . urlencode( $lj_form_auth[1] ) . '&chal=' . urlencode( $chal[1] ) . '&response=' . MD5( $chal[1] . MD5( $password ) ) . '&user=' . $login . '&password=' . $password . '&remember_me=1&action%3Alogin=%D0%92%D1%85%D0%BE%D0%B4+%D0%B2+%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83...', 'http://www.livejournal.com/login.bml' );
if ( preg_match( '#logout(.*?)form#i', $result ) ) {
return true;
} else {
return false;
}
}
1/ $post - пиши в строку;
2/ urlencode( $lj_form_auth[1] );
3/urlencode( $chal[1] );
и т.д.
Странно, если это весь код, то как он у тебя вообще авторизуется? Там параметры для авторизации формируются ява скриптом в начале страницы(Я намучился когда писал цикл для "добавления друзей")
Последний раз редактировалось Komyak; 12.02.2010 в 20:43..
|
|
|

13.02.2010, 03:27
|
|
Новичок
Регистрация: 23.10.2009
Сообщений: 13
Провел на форуме: 36748
Репутация:
0
|
|
Спасибо, но зачем так сложно? Авторизироваться вполне можно и так:
PHP код:
<?php
$curl = curl_init();
curl_setopt($curl, 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($curl, CURLOPT_URL, 'http://www.livejournal.com/login.bml');
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, 'user=0captain_memo&password=201826');
curl_setopt($curl, CURLOPT_REFERER, 'http://www.livejournal.com');
curl_setopt($curl, CURLOPT_COOKIEJAR, "./cook1");
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result= curl_exec($curl);
echo $result;
curl_close ($curl);
?>
Вопрос то в другом: как дальше пройти на страницу http://www.livejournal.com/manage/profile
и отредактировать профиль ?
|
|
|

14.02.2010, 12:22
|
|
Участник форума
Регистрация: 15.01.2009
Сообщений: 158
Провел на форуме: 469704
Репутация:
26
|
|
Вопрос то в другом: как дальше пройти на страницу
Так тебе и дали готовую функцию. В дальнейшем там любое действие требует получения этих параметров. Меняй урлы в этой функции под свои нужды.
Это $lj_form_auth- нужно везде.
Я сначала тоже не мог ничего изменить...
Авторизироваться вполне можно и так:
Какой размер кода получится в итоге? Авторизация->Переход->Получение параметров->Отправка->....
|
|
|

27.02.2010, 16:36
|
|
Новичок
Регистрация: 23.10.2009
Сообщений: 13
Провел на форуме: 36748
Репутация:
0
|
|
Спасибо помогло
|
|
|

27.02.2010, 16:58
|
|
Познающий
Регистрация: 16.06.2008
Сообщений: 48
Провел на форуме: 1215207
Репутация:
51
|
|
В той функции тебе надо было подгружать куки с авторизации.
curl_setopt($ch, CURLOPT_COOKIEFILE, $user_cookie_file);
curl_setopt($ch, CURLOPT_COOKIEJAR, $user_cookie_file);
|
|
|
|
 |
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
[c++] [firefox] скрытый переход по линку
|
qsd |
С/С++, C#, Delphi, .NET, Asm |
17 |
06.01.2010 15:45 |
|
POST запрос...
|
Kandi |
С/С++, C#, Delphi, .NET, Asm |
19 |
02.12.2009 11:42 |
|
SQL инъекция (в т.ч. и blind SQL)
|
kot777 |
Уязвимости |
4 |
04.10.2008 17:18 |
|
Post запрос...
|
RedBull@12 |
С/С++, C#, Delphi, .NET, Asm |
4 |
06.12.2006 17:26 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|