Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Curl i problem z pobraniem danych z asp
ewelinac18
post
Post #1





Grupa: Zarejestrowani
Postów: 99
Pomógł: 0
Dołączył: 11.07.2007

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


Witam, mam problem z CUrl i nie wiem jak sobie poradzić


  1. <?php
  2.  
  3. $cookie_file = 'cookie.txt';
  4. file_put_contents($cookie_file, '');
  5.  
  6. $c = curl_init();
  7. curl_setopt($c, CURLOPT_COOKIESESSION, 1);
  8. curl_setopt($c, CURLOPT_COOKIEFILE, 'cookie.txt');
  9. curl_setopt($c, CURLOPT_COOKIEJAR, 'cookie.txt');
  10. curl_setopt($c, CURLOPT_URL, 'http://xxx/Walidacja.asp');
  11. curl_setopt($c, CURLOPT_POST, 1);
  12. curl_setopt($c, CURLOPT_POSTFIELDS, 'LoginName===login===&LoginHaslo===haslo===&submit1=Logowanie'); //dane do wyslania
  13. curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
  14. curl_init();
  15. curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
  16. curl_setopt($c, CURLOPT_POSTFIELDS, 'submit1=Potwierdzam&Magazyn=1');
  17. curl_setopt($c, CURLOPT_URL, "http://xxx/izam/ZamSesjaCookie.asp");
  18. curl_init();
  19. curl_setopt($c, CURLOPT_POSTFIELDS, 'submit1=Potwierdzam&Magazyn=1');
  20. curl_setopt($c, CURLOPT_URL, "http://xxx/Sterowanie2.asp?sesjaid=0");
  21. curl_init();
  22. curl_setopt($c, CURLOPT_URL, "http://xxx/izam/Zasady.asp");
  23. curl_init();
  24. curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
  25. curl_setopt($c, CURLOPT_URL, "http://xxx/CenSzukaj.asp");
  26. $page = curl_exec($c);
  27. curl_close($c);
  28. echo 'Wynik: <br>'.$page;
  29.  
  30. ?>



probowałam wielu opcji
ręczne dodawanie ciasteczek tez nie pomogło
ciągle to samo

Kod
Object Moved
This object may be found here.


Ten post edytował ewelinac18 4.07.2009, 07:10:14
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
MolTAR
post
Post #2





Grupa: Zarejestrowani
Postów: 17
Pomógł: 2
Dołączył: 15.08.2007
Skąd: Nowy Targ

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


A może tak się uda:
  1. <?php
  2. $cookie_file = './cookie.txt';
  3. file_put_contents($cookie_file, '');
  4.  
  5. $c = curl_init();
  6. curl_setopt($c, CURLOPT_COOKIESESSION, 1);
  7. curl_setopt($c, CURLOPT_COOKIEFILE, $cookie_file);
  8. curl_setopt($c, CURLOPT_COOKIEJAR, $cookie_file);
  9. curl_setopt($c, CURLOPT_URL, 'http://xxx/Walidacja.asp');
  10. curl_setopt($c, CURLOPT_POST, 1);
  11. curl_setopt($c, CURLOPT_POSTFIELDS, 'LoginName===login===&LoginHaslo===haslo===&submit1=Logowanie'); //dane do wyslania
  12. curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
  13. curl_close($c);
  14.  
  15. $d = curl_init();
  16.  
  17. curl_setopt($d, CURLOPT_COOKIESESSION, 1);
  18. curl_setopt($d, CURLOPT_COOKIEFILE, $cookie_file);
  19. curl_setopt($c, CURLOPT_COOKIEJAR, $cookie_file);
  20.  
  21. curl_setopt($d, CURLOPT_RETURNTRANSFER, 1);
  22. curl_setopt($d, CURLOPT_POSTFIELDS, 'submit1=Potwierdzam&Magazyn=1');
  23. curl_setopt($d, CURLOPT_URL, &#092;"http://xxx/izam/ZamSesjaCookie.asp\");
  24.  
  25. curl_close($d);
  26.  
  27. $e = curl_init();
  28.  
  29. curl_setopt($e, CURLOPT_COOKIESESSION, 1);
  30. curl_setopt($e, CURLOPT_COOKIEFILE, $cookie_file);
  31. curl_setopt($e, CURLOPT_COOKIEJAR, $cookie_file);
  32.  
  33. curl_setopt($e, CURLOPT_POSTFIELDS, 'submit1=Potwierdzam&Magazyn=1');
  34. curl_setopt($e, CURLOPT_URL, &#092;"http://xxx/Sterowanie2.asp?sesjaid=0\");
  35.  
  36. curl_close($e);
  37.  
  38. $f = curl_init();
  39.  
  40. curl_setopt($f, CURLOPT_COOKIESESSION, 1);
  41. curl_setopt($f, CURLOPT_COOKIEFILE, $cookie_file);
  42. curl_setopt($f, CURLOPT_COOKIEJAR, $cookie_file);
  43.  
  44. curl_setopt($f, CURLOPT_URL, &#092;"http://xxx/izam/Zasady.asp\");
  45.  
  46. curl_close($f);
  47.  
  48. $g = curl_init();
  49.  
  50. curl_setopt($g, CURLOPT_COOKIESESSION, 1);
  51. curl_setopt($g, CURLOPT_COOKIEFILE, $cookie_file);
  52. curl_setopt($g, CURLOPT_COOKIEJAR, $cookie_file);
  53.  
  54. curl_setopt($g, CURLOPT_RETURNTRANSFER, 1);
  55. curl_setopt($g, CURLOPT_URL, &#092;"http://xxx/CenSzukaj.asp\");
  56. $page = curl_exec($g);
  57. curl_close($g);
  58. echo 'Wynik:
  59. '.$page
  60. ?>


A jak nie to sprawdź dokładnie adresy wszystkich stron

Ten post edytował MolTAR 4.07.2009, 08:19:21
Go to the top of the page
+Quote Post
zegarek84
post
Post #3





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


hmmm... ładnie ciurkiem napisane (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

proponuję skorzystać z dodatku do mozilli Live HTTP Headers i sprawdzić co jest wysyłane - może strona wymaga coś więcej niz tylko cookies?? (IMG:http://img-upload.pl/images/396_g.gif) - może też wymagany jest na niektórych stronach referer, lub inne info - lub nie pusty nagłówek przeglądarki??....
Go to the top of the page
+Quote Post
ewelinac18
post
Post #4





Grupa: Zarejestrowani
Postów: 99
Pomógł: 0
Dołączył: 11.07.2007

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


dziękuję za pomoc
MolTAR już wcześniej tak próbowałam
skorzystałam z rady zegarek84 i zainstalowałam Live HTTP Headers (bardzo fajna rzecz (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) )
trochę przeanalizowałam i znalazłam winę ale nie do końca wiem jak ją usunąć

trzeba w ostatnim etapie dodać ciasteczka ale ręcznie nie wiem dlaczego
  1. <?php
  2. curl_setopt($c, CURLOPT_COOKIE, 'ASPSESSIONIDQAAADSDS=KIGHBFHDINNLHEGAACEMBKAG; izam=loginname=xxx');
  3. ?>

ale z ciasteczkami pobranymi curl nie działa muszę w mozille patrzeć jakie ja uzyskałam ciasteczka i sama dopisać
Go to the top of the page
+Quote Post
zegarek84
post
Post #5





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


Cytat(ewelinac18 @ 4.07.2009, 13:57:44 ) *
skorzystałam z rady zegarek84 i zainstalowałam Live HTTP Headers (bardzo fajna rzecz (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) )
trochę przeanalizowałam i znalazłam winę ale nie do końca wiem jak ją usunąć

trzeba w ostatnim etapie dodać ciasteczka ale ręcznie nie wiem dlaczego
  1. <?php
  2. curl_setopt($c, CURLOPT_COOKIE, 'ASPSESSIONIDQAAADSDS=KIGHBFHDINNLHEGAACEMBKAG; izam=loginname=xxx');
  3. ?>

ale z ciasteczkami pobranymi curl nie działa muszę w mozille patrzeć jakie ja uzyskałam ciasteczka i sama dopisać

OMG - u Ciebie jest:
Kod
curl_setopt($c, CURLOPT_COOKIESESSION, 1);

a w manualu pisze:
Cytat(CURLOPT_COOKIESESSION)
TRUE to mark this as a new cookie "session". It will force libcurl to ignore all cookies it is about to load that are "session cookies" from the previous session. By default, libcurl always stores and loads all cookies, independent if they are session cookies or not. Session cookies are cookies without expiry date and they are meant to be alive and existing for this "session" only.

podczas gdy widzę, że Ty sesję co chwila zamykasz ;p (curl_close) - pozatym nawet jeśli musisz "ręcznie" to czemu sobie tych cookies nie wrzucisz do jakiejś zmiennej jeśli juz "ciurkiem" piszesz - ogólnie wskazuję tylko błedy gdyż na błędach człowiek się uczy a sam curl ma sporo ciekawych opcji (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

ogólnie jeśli dużo będziesz się "bawił" curl'em to zapoznaj jeszcze się blizej z ustawieniami CURLOPT_HEADERFUNCTION oraz CURLOPT_WRITEFUNCTION - bardzo ciekawe jeśli parsuje się dane dostępne podczas sesji - gdzie normalnie też np. "zabezpieczonych" obrazków nie można zgrać ^^ - ogólnie to da się tez kombinując inaczej bo zawsze da się do celu dojść okrężnymi drogami (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
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 - 12:51