Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [cUrl] Logowanie na portalu poszkole
Sk0rp10n
post
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 7.03.2012

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


Witam. Od dłuższego czasu staram się stworzyć skrypt który umożliwi mi zalogowanie się na portal poszkole i umożliwi mi pobranie informacji czy są jakieś nowe wiadomości czy nie. Lecz mam z tym pewien problem nie wiem czemu skrypt nie chce działać mam stworzony plik cookie.txt oraz skrypt niby powinien działać lecz jak zauważyłem nie aktualizuje on nawet tego pliku i brak reakcji jeśli chodzi o samo logowanie.

  1. <?
  2. $cookie = 'cookie.txt';
  3.  
  4. $cu = curl_init();
  5. curl_setopt($cu, CURLOPT_URL, "http://poszkole.pl/login");
  6. curl_setopt($cu, CURLOPT_COOKIEFILE, $cookie);
  7. curl_setopt($cu, CURLOPT_COOKIEJAR, $cookie);
  8. curl_setopt($cu, CURLOPT_COOKIE, $cookie);
  9. curl_setopt($cu, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12;MEGAUPLOAD 1.0");
  10. curl_setopt($cu, CURLOPT_POST, 1);
  11. curl_setopt($cu, CURLOPT_POSTFIELDS, "email=emailllll&pass=hasloooo&reg=0&zapamietaj=1&submit=Zaloguj+mnie");
  12. curl_setopt($cu, CURLOPT_REFERER, "http://poszkole.pl/profil");
  13. curl_setopt($cu, CURLOPT_RETURNTRANSFER, 1);
  14. curl_setopt($cu, CURLOPT_FOLLOWLOCATION, 1);
  15. $wys = curl_exec($cu);
  16. curl_close($cu);
  17. ?>


Prosiłbym o pomoc co może być nie tak. Hosting jakiego używam to cba jeśli ma to jakieś znaczenie. Z góry dziękuję za pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


Wywal 8 linijkę - jest zbędna w 12 linijce zmień referer na "http://poszkole.pl/login".


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post
Sk0rp10n
post
Post #3





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 7.03.2012

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


Dalej plik cookie nie jest aktualizowany dodałem echo przy "$wys" myślałem że temu nie wyświetla strony lecz nic to nie zmieniło oraz ustawiłem na inny USERAGENT już pobrany nie ze strony a z "Live HTTP Headers".

  1. <?php
  2. $cookie = 'cookie.txt';
  3.  
  4. $cu = curl_init();
  5. curl_setopt($cu, CURLOPT_URL, "http://poszkole.pl/login");
  6. curl_setopt($cu, CURLOPT_COOKIEFILE, $cookie);
  7. curl_setopt($cu, CURLOPT_COOKIEJAR, $cookie);
  8. curl_setopt($cu, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1");
  9. curl_setopt($cu, CURLOPT_POST, 1);
  10. curl_setopt($cu, CURLOPT_POSTFIELDS, "email=*********&pass=*********&reg=0&zapamietaj=1&submit=Zaloguj+mnie");
  11. curl_setopt($cu, CURLOPT_REFERER, "http://poszkole.pl/login");
  12. curl_setopt($cu, CURLOPT_RETURNTRANSFER, 1);
  13. curl_setopt($cu, CURLOPT_FOLLOWLOCATION, 1);
  14. echo $wys = curl_exec($cu);
  15. curl_close($cu);
  16. ?>


Szczerze nie mam pomysłów czemu nie może on zapisać cookiesów a jest mi to potrzebne do dalszej części skryptu.

Ten post edytował Sk0rp10n 7.03.2012, 14:08:00
Go to the top of the page
+Quote Post
kaki2308
post
Post #4





Grupa: Zarejestrowani
Postów: 10
Pomógł: 2
Dołączył: 15.10.2011

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


  1. <?php
  2.  
  3. function createPostString($aPostFields) {
  4. foreach ($aPostFields as $key => $value) {
  5. $aPostFields[$key] = urlencode($key) . '=' . urlencode($value);
  6. }
  7. return implode('&', $aPostFields);
  8. }
  9.  
  10.  
  11. $postFields['email'] = 'xxx';
  12. $postFields['pass'] = '2323';
  13. $postFields['reg'] = '0';
  14. $postFields['submit'] = 'Zaloguj mnie';
  15.  
  16. $ch = curl_init();
  17. curl_setopt($ch, CURLOPT_URL, 'http://poszkole.pl/login');
  18. curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0.2) Gecko/20100101 Firefox/10.0.2');
  19. curl_setopt($ch, CURLOPT_POST, 1);
  20. curl_setopt($ch, CURLOPT_POSTFIELDS, createPostString($postFields));
  21. curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookies.txt');
  22. curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookies.txt');
  23. curl_setopt($ch, CURLOPT_REFERER, 'http://poszkole.pl/login');
  24. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  25. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  26. echo curl_exec($ch);
  27. curl_close($ch);
  28. ?>


dirname(__FILE__) i działa
Go to the top of the page
+Quote Post
Sk0rp10n
post
Post #5





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 7.03.2012

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


Może ktoś to u siebie sprawdzić jak coś mogę podesłać konto na ten skrypt lecz u mnie dalek plik "cookie" nie zmienia zawartości (ustawione w skrypcie jest pod "cookie.txt").
Go to the top of the page
+Quote Post
kaki2308
post
Post #6





Grupa: Zarejestrowani
Postów: 10
Pomógł: 2
Dołączył: 15.10.2011

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


A próbowałeś dir_name tak jak mówiłem?

  1. <?
  2. $cookie = dirname(__FILE__) . '/cookie.txt';
  3.  
  4. $cu = curl_init();
  5. curl_setopt($cu, CURLOPT_URL, "http://poszkole.pl/login");
  6. curl_setopt($cu, CURLOPT_COOKIEFILE, $cookie);
  7. curl_setopt($cu, CURLOPT_COOKIEJAR, $cookie);
  8. curl_setopt($cu, CURLOPT_COOKIE, $cookie);
  9. curl_setopt($cu, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12;MEGAUPLOAD 1.0");
  10. curl_setopt($cu, CURLOPT_POST, 1);
  11. curl_setopt($cu, CURLOPT_POSTFIELDS, "email=mail&pass=pass&reg=0&zapamietaj=1&submit=Zaloguj+mnie");
  12. curl_setopt($cu, CURLOPT_REFERER, "http://poszkole.pl/profil");
  13. curl_setopt($cu, CURLOPT_RETURNTRANSFER, 1);
  14. curl_setopt($cu, CURLOPT_FOLLOWLOCATION, 1);
  15. $wys = curl_exec($cu);
  16. curl_close($cu);
  17. echo $wys;
  18. ?>


Bo mi wszystko tak działa, pojawia się plik cookie.txt z cookie. Skrypt odpalam na xampp.
Go to the top of the page
+Quote Post
Sk0rp10n
post
Post #7





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 7.03.2012

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


Właśnie o to chodzi że nawet skorzystałem z Twego kodu i dalej nic to nie zmieniło chyba że to przez hosting lecz inaczej jak się nie mylę wyskoczył by błąd gdyby cba nie mogło czegoś obsłużyć tak??
Go to the top of the page
+Quote Post
kaki2308
post
Post #8





Grupa: Zarejestrowani
Postów: 10
Pomógł: 2
Dołączył: 15.10.2011

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


Cba nie posiada cURL'a.
Niewiele darmowych serwisów hostingowych go ma.
Go to the top of the page
+Quote Post
foxbond
post
Post #9





Grupa: Zarejestrowani
Postów: 162
Pomógł: 12
Dołączył: 20.12.2009
Skąd: Siedlce

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


na cba możesz użyć funkcji fsocketopen
Go to the top of the page
+Quote Post
Sk0rp10n
post
Post #10





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 7.03.2012

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


Dzięki wszystkim w takim razie poszukam innego hostingu.
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 - 19:17