Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> CURL - Wysyłanie danych tak aby skrypt odebrał je jako POST a nie GET., CURL - Wysyłanie danych tak aby skrypt odebrał je jako POST a nie GET.
akurczyk
post
Post #1





Grupa: Zarejestrowani
Postów: 201
Pomógł: 5
Dołączył: 15.07.2008
Skąd: Kłodzko

Ostrzeżenie: (10%)
X----


Witam
Pisze skrypt do darmowego, automatycznego pobierania plików z serwisu RapidShare.
  1. <?php
  2. $hand = curl_init();
  3. curl_setopt($hand, CURLOPT_URL, "http://rapidshare.com/files/180164458/Malcolm_In_The_Middle_-_1x01_-_Pilot.part1.rar");
  4. curl_setopt($hand, CURLOPT_RETURNTRANSFER, true);
  5. $output = curl_exec($hand);
  6. curl_close($hand);
  7. preg_match("/<form id=\"ff\" action=\"(.*)\" method=\"post\">/S", $output, $matches);
  8. $hand2 = curl_init();
  9. curl_setopt($hand2, CURLOPT_URL, $matches[1]);
  10. curl_setopt($hand2, CURLOPT_POST, true);
  11. curl_setopt($hand2, CURLOPT_POSTFILEDS, "dl.start=Free");
  12. curl_setopt($hand2, CURLOPT_RETURNTRANSFER, true);
  13. $output2 = curl_exec($hand2);
  14. curl_close($hand2);
  15. echo $output2;
  16. ?>

Skrypt nie działa, bo docelowy skrypt musi odebrać zmienną "dl.start=Free" jako POST a nie GET. W manualu nie udało mi się znaleźć opcji która umożliwiła by ni to umożliwiła. Co mam zrobić aby wysłać dane GETem a nie POSTem? (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

Ten post edytował akurczyk 4.07.2009, 23:21:32
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
akurczyk
post
Post #2





Grupa: Zarejestrowani
Postów: 201
Pomógł: 5
Dołączył: 15.07.2008
Skąd: Kłodzko

Ostrzeżenie: (10%)
X----


Już sobie z tym poradziłem. Zrobiłem literówkę, a curl nie wywalił żadnego błędu więc pomyślałem że to problem z rapidem. Mam jeszcze jeden problem, skrypt którego kod jest poniżej, wyświetla link do pliku, jednak jest on aktywny dopiero po 60 sekundach. Jak zrobić aby php odczekało te 60 sekund, zanim pobierze ten plik. Czy nie będzie wtedy jakiegoś problemu z maksymalnym czasem pobierania(przeglądarka,apache)/parsowania(php) strony??? Co do pobierania plików, to chciałem używć wgeta (ten skrypt ma automatycznie pobierać pliki z rapida na Linuksie).
  1. <?php
  2. $hand = curl_init();
  3. curl_setopt($hand, CURLOPT_URL, "http://rapidshare.com/files/180164458/Malcolm_In_The_Middle_-_1x01_-_Pilot.part1.rar");
  4. curl_setopt($hand, CURLOPT_RETURNTRANSFER, true);
  5. $output = curl_exec($hand);
  6. curl_close($hand);
  7. preg_match("/<form id=\"ff\" action=\"(.*)\" method=\"post\">/S", $output, $matches);
  8. $hand2 = curl_init();
  9. curl_setopt($hand2, CURLOPT_URL, $matches[1]);
  10. curl_setopt($hand2, CURLOPT_POST, true);
  11. curl_setopt($hand2, CURLOPT_POSTFIELDS, "dl.start=Free");
  12. curl_setopt($hand2, CURLOPT_RETURNTRANSFER, true);
  13. $output2 = curl_exec($hand2);
  14. curl_close($hand2);
  15. preg_match("/<form name=\"dlf\" action=\"(.*)\" method=\"post\">/S", $output2, $matches2);
  16. echo $matches2[1];
  17. ?>


Ten post edytował akurczyk 6.07.2009, 11:59:00
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: 12.10.2025 - 04:01