Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] [CURL] Logowanie używając danych z poprzedniej sesji
Manderigon
post
Post #1





Grupa: Zarejestrowani
Postów: 88
Pomógł: 0
Dołączył: 30.04.2011

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


Witam.
Chciałbym wrzucić źródło strony na serwer ze strony, na którą trzeba najpierw się zalogować. Jak mam bazować na ciasteczkach? Udało mi się napisać jak dotąd coś takiego:

  1. <?php
  2.  
  3. $curl = curl_init();
  4.  
  5. curl_setopt($curl, CURLOPT_URL, "strona na ktora trzeba sie zalogowac");
  6. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  7. curl_setopt($curl, CURLOPT_COOKIEFILE, 'cookies.txt');
  8. curl_setopt($curl, CURLOPT_COOKIEJAR, 'cookies.txt');
  9. curl_setopt($curl, CURLOPT_TIMEOUT, 7000);
  10. curl_setopt($curl, CURLOPT_HEADER, 0);
  11. $strona = curl_exec($curl);
  12. curl_close($curl);
  13.  
  14. echo $strona;
  15. ?>


Całość wyglądałaby tak:
1. Loguje się na stronę;
2. Odpalam skrypt;
3. Skrypt widzi, że jestem zalogowany i ze strony (jako zalogowany) zapisuje źródło pliku na serwerze.

Proszę o pomoc.
Pozdrawiam.
Go to the top of the page
+Quote Post
Giluś
post
Post #2





Grupa: Zarejestrowani
Postów: 377
Pomógł: 9
Dołączył: 2.11.2010

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


  1. function file_get_contents_curl($url) {
  2. $c = curl_init();
  3. curl_setopt($c, CURLOPT_URL, $url);
  4. curl_setopt($c, CURLOPT_POST, true);
  5. curl_setopt($c, CURLOPT_POSTFIELDS, 'login=**&pass=***');
  6. curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
  7. curl_setopt($c, CURLOPT_COOKIEFILE, './cookie.txt');
  8. curl_setopt($c, CURLOPT_COOKIEJAR,'./cookie.txt');
  9. $page = curl_exec($c);
  10. curl_close($c);
  11. return $page;
  12. }
Go to the top of the page
+Quote Post
Manderigon
post
Post #3





Grupa: Zarejestrowani
Postów: 88
Pomógł: 0
Dołączył: 30.04.2011

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


No nie bardzo to działa... Chodzi mi o coś takiego:

1. Osoba loguje się na stronę:
Kod
przyklad.pl/loguj.php

2. Zostaje przekierowana na:
Kod
przyklad.pl/po_zalogowaniu.php

3. Odpala moja stronę ze skryptem
4. Skrypt zrzuca na serwer źródło strony:
Kod
przyklad.pl/po_zalogowaniu.php


  1. <?php
  2.  
  3. $url='przyklad.pl/po_zalogowaniu.php';
  4.  
  5. function file_get_contents_curl($url) {
  6. $c = curl_init();
  7. curl_setopt($c, CURLOPT_URL, $url);
  8. curl_setopt($c, CURLOPT_POST, true);
  9. curl_setopt($c, CURLOPT_POSTFIELDS, 'login=**&pass=***');
  10. curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
  11. curl_setopt($c, CURLOPT_COOKIEFILE, 'cookie.txt');
  12. curl_setopt($c, CURLOPT_COOKIEJAR,'cookie.txt');
  13. $page = curl_exec($c);
  14. curl_close($c);
  15. return $page;
  16. }
  17.  
  18. $page = file_get_contents_curl($url);
  19. echo $page;
  20. ?>


Skrypt powyżej robi coś takiego:
1. Osoba loguje się na stronę:
Kod
przyklad.pl/loguj.php

2. Zostaje przekierowana na:
Kod
przyklad.pl/po_zalogowaniu.php

3. Odpala moja stronę ze skryptem
4. PUSTO..



Odświeżam

@refresh

@ref

ref

ref
Go to the top of the page
+Quote Post
--Manderigon--
post
Post #4





Goście







refresh
Go to the top of the page
+Quote Post
--Manderigon--
post
Post #5





Goście







refresh
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 19:27