Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Curl - logowanie IPB
Watt
post
Post #1





Grupa: Zarejestrowani
Postów: 372
Pomógł: 1
Dołączył: 13.06.2008

Ostrzeżenie: (0%)
-----


Witam!

Chciałem napisać logowanie na IPB w curlu, ale coś nie chce działać. Czy mógłbym prosić o pomoc?

Kod
$Pass = 'pass';
$link = 'http://www.forum.com/';
$c = curl_init();
curl_setopt($c, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($c, CURLOPT_COOKIEFILE, $cookie_file);
curl_setopt($c, CURLOPT_URL, 'http://www.forum.com/index.php?act=login&CODE=00');
curl_setopt($c, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12;");
curl_setopt($c, CURLOPT_POST, 1);
curl_setopt($c, CURLOPT_POSTFIELDS,
'UserName=Nick&PassWord='.$Pass.'&do=login&CookieDate=1');
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_getinfo($c);
$s = curl_exec($c);
curl_close($c);
echo "Poszlo?";
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
pitu
post
Post #2





Grupa: Zarejestrowani
Postów: 476
Pomógł: 96
Dołączył: 10.04.2008
Skąd: Koszalin

Ostrzeżenie: (0%)
-----


Najpierw musisz pobrać "auth_key", a następnie logując się wysłać go wraz z innymi danymi. Zainteresuj się dodatkiem do FF Live HTTP Headers.


--------------------
HTML/CSS/JS: jsfiddle
SQL: sqlfiddle
Go to the top of the page
+Quote Post
Watt
post
Post #3





Grupa: Zarejestrowani
Postów: 372
Pomógł: 1
Dołączył: 13.06.2008

Ostrzeżenie: (0%)
-----


Zamieniłem to na coś takiego i dalej nie śmiga (choc auth key pobiera)
Kod
$md5Pass = 'pass';
$link = 'http://www.forum.com/';
$c = curl_init();
curl_setopt($c, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($c, CURLOPT_COOKIEFILE, $cookie_file);
curl_setopt($c, CURLOPT_URL, 'http://www.forum.com/index.php?app=core&module=global&section=login');
curl_setopt($c, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12;");
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_getinfo($c);
$s = curl_exec($c);
curl_close($c);

preg_match('/<input type=[\'"]hidden[\'"] name=[\'"]auth_key[\'"] value=[\'"](.*)[\'"] \/>/isU', $s,$auth_key);

//print_r($matches);
$md5Pass = 'pass';
$link = 'http://www.forum.com/';
$c = curl_init();
curl_setopt($c, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($c, CURLOPT_COOKIEFILE, $cookie_file);
curl_setopt($c, CURLOPT_URL, 'http://www.forum.com/index.php?act=login&CODE=00');
curl_setopt($c, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12;");
curl_setopt($c, CURLOPT_POST, 1);
curl_setopt($c, CURLOPT_POSTFIELDS,
'auth_key='.$auth_key[1].'&UserName=Nick&PassWord='.$md5Pass.'&do=login&CookieDate=1');
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_getinfo($c);
$s = curl_exec($c);
curl_close($c);
echo $auth_key[1]."Poszlo?";


print_r($s);
Go to the top of the page
+Quote Post
pitu
post
Post #4





Grupa: Zarejestrowani
Postów: 476
Pomógł: 96
Dołączył: 10.04.2008
Skąd: Koszalin

Ostrzeżenie: (0%)
-----


Czy to jest na pewno dobry adres, na które mają być wysłane dane przy logowaniu?

  1. curl_setopt($c, CURLOPT_URL, 'http://www.forum.com/index.php?act=login&CODE=00');


Dodatkowo przeglądałem źródła dwóch for na IPB i nazwy pól login i hasło wyglądają tam inaczej.

  1. ips_username
  2. ips_password


--------------------
HTML/CSS/JS: jsfiddle
SQL: sqlfiddle
Go to the top of the page
+Quote Post
Watt
post
Post #5





Grupa: Zarejestrowani
Postów: 372
Pomógł: 1
Dołączył: 13.06.2008

Ostrzeżenie: (0%)
-----


O, wybacz sprawdzałem na róznych forach i nie zauważyłem. Dzięki!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 18:35