Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: CURL - logowanie
Forum PHP.pl > Forum > PHP
nulmail
Chciałbym opanować logowanie się poprzez CURL'a, na przykładzie strony nk.pl, próbowałem też inne strony problem pojawiał się ten sam. Wynikiem jest strona gdzie podają że podany jest zły login lub hasło, gdzie na pewno dobrze podaje. Wiecie może jaka jest tego przyczyna ?

  1. $ch = curl_init();
  2. curl_setopt($ch, CURLOPT_URL, "http://nk.pl/login");
  3. curl_setopt($ch, CURLOPT_POST, 1);
  4. curl_setopt($ch, CURLOPT_POSTFIELDS, 'form_name='.urlencode('login_form').'&login='.urlencode('tajny_login').'&password='.urlencode('tajne_haslo').'&remember=1');
  5. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  6. curl_setopt($ch, CURLOPT_HEADER, 1);
  7. curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.8.0.3) Gecko/20060426 Firefox/1.5.0.3');
  8. curl_setopt($ch, CURLOPT_REFERER, 'https://www.nk.pl');
  9. curl_setopt($ch, CURLOPT_NOBODY, 0);
  10. curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
  11. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  12. curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
  13. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  14. curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__).'/cookie.txt');
  15. curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__).'/cookie.txt');
  16. curl_setopt($ch, CURLOPT_COOKIEO, dirname(__FILE__).'/cookie.txt');
  17.  
  18. echo curl_exec($ch);
Helid
Pominąłeś ukryte pole target.
nulmail
Jeszcze jeden problem, po zalogowaniu i wejściu na pod stronę nk do paska adresu przeglądarki dopisywany jest "#" i wynikiem jest brak pliku; czyli np. wywołuje skrypt wchodząc na adres:
www.domena.pl/katalog/skrypt.php
po wykonaniu skryptu przeglądarka przeskakuje na adres:
www.domena.pl/#katalog/skrypt.php


Kod wykonywany po zalogowaniu ktory dodaje do adresu "#":
  1.  
  2. //Wyswietlanie strony po zalogowaniu
  3. $cookie_file = dirname(__FILE__).'/cookie.txt';
  4. $referer = 'https://www.nk.pl';
  5. $userAgent = 'Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.8.0.3) Gecko/20060426 Firefox/1.5.0.3';
  6.  
  7. $ch2 = curl_init();
  8. $url = 'http://nk.pl/main';
  9. curl_setopt($ch2, CURLOPT_COOKIEFILE, $cookie_file);
  10. curl_setopt($ch2, CURLOPT_COOKIE, $cookie_file);
  11. curl_setopt($ch2, CURLOPT_COOKIEJAR, $cookie_file);
  12. curl_setopt($ch2, CURLOPT_REFERER, $referer);
  13. curl_setopt($ch2, CURLOPT_FOLLOWLOCATION, 0);
  14. curl_setopt($ch2, CURLOPT_URL, $url);
  15. curl_setopt($ch2, CURLOPT_HEADER, 1);
  16. curl_setopt($ch2, CURLOPT_USERAGENT, $userAgent);
  17. curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);
  18.  
  19. $site = curl_exec($ch2);
  20. echo $site;
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.