Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wysyłanie formularza Curl
Kasat
post
Post #1





Grupa: Zarejestrowani
Postów: 60
Pomógł: 2
Dołączył: 22.08.2008

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


Witajcie, mam problem ponieważ na stronie wizzair.com jest formularz szukania lotu z x lotniska na y lotnisko z zależnościami do daty itp.

form action jest na pl-PL/Select, jednak gdy tam wysyłam formularz to niestety przekierowuje mnie na /pl-PL/Search
Przyczyną pewnie jest brak odebrania danych POST..
Po przetestowaniu skryptu okazuje się, że domyślne nazwy pól input jest chyba za długie.. bo gdy je zostawiam to testowy skrypt nie odbiera danych, a gdy tylko lekko je skrócę to od razu odbiera... Możecie pomóc?

  1. <?php
  2.  
  3. $url = 'http://wizzair.com/pl-PL/Select';
  4. $site = 'http://wizzair.com/pl-PL/Search';
  5. $html = pobierzstrone($site);
  6. preg_match('/<input id="viewState" type="hidden" value="(.*)" name="viewState">/', $html, $viewstate);
  7. $d = 'ControlGroupRibbonAnonHomeView$AvailabilitySearchInputRibbonAnonHomeView$';
  8. $postFields['eventTarget'] = '';
  9. $postFields['eventArgument'] = '';
  10. $postFields[$d.'ReturnDate'] = '2013-09-28';
  11. $postFields[$d.'ButtonSubmit'] = 'Szukaj';
  12. $postFields[$d.'DepartureDate'] = '2013-09-02';
  13. $postFields[$d.'PaxCountINFANT'] = '0';
  14. $postFields[$d.'PaxCountCHD'] = '0';
  15. $postFields[$d.'PaxCountADT'] = '1';
  16. $postFields['viewState'] = $viewstate[1];
  17. $postFields['pageToken'] = '';
  18. $postFields[$d.'OriginStation'] = 'AES';
  19. $postFields[$d.'DestinationStation'] = 'VNO';
  20. $postFields[$d.'StudetSeniorGroup'] = 'off';
  21. $postFields[$d.'WizzFlightSearchInput2_COUNTRIES'] = 'PL';
  22.  
  23. szukaj($url, $postFields);
  24.  
  25.  
  26. function szukaj($url,$postFields){
  27. $ch = curl_init($url);
  28. curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
  29. curl_exec($ch);
  30. curl_close($ch);
  31. }
  32.  
  33. function pobierzstrone($site){
  34. $ch = curl_init();
  35. curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  36. curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
  37. curl_setopt($ch, CURLOPT_TIMEOUT, 40);
  38. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
  39. curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
  40. curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
  41. curl_setopt($ch, CURLOPT_URL, $site);
  42. return curl_exec ($ch);
  43. curl_close ($ch);
  44.  
  45. }
  46.  
  47.  
  48.  
  49. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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: 4.10.2025 - 19:56