Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Upload plików przez cURL
Forum PHP.pl > Forum > PHP
radmistrz2
Witam. Mam problem. Chcę napisać skrypt do uploadu plików przez cURL na rapidshare ale nie wychodzi mi. Formularz wygląda tak:

  1. <?php
  2. <form name="ul" method="post" action="http://rs130l3.rapidshare.com/cgi-bin/upload.cgi?rsuploadid=139335027420802903" enctype="multipart/form-data" onsubmit="return zeigeProcess();">  
  3. <input type="file" size="65" id="dateiname" name="filecontent" onchange="zeigeUploadBtn();" />  
  4. <input type=image id="btnupload" name="u" src="/img2/upload_file.jpg" style="visibility:hidden;" />
  5. </form>
  6. ?>


Dla czego to nie działa??
  1. <?php
  2. $postFields['plik1'] = '@' . dirname(__FILE__) . '/demo.mp3';
  3. $ch = curl_init('http://rs130l3.rapidshare.com/cgi-bin/upload.cgi?rsuploadid=139335027420802903');
  4. curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
  5. curl_exec($ch);
  6. curl_close($ch);
  7. ?>
matx132
nie działa ponieważ

rs130l3
rsuploadid=139335027420802903

przy każdym uploadzie się zmienia wiec nie możesz dawać cały czas tych samych

możesz ściągnąć juz istniejące skrypty do tego i napisach na podstawie ich
bugi89
HeY!! Kiedyś sobie napisałem taki skrypt smile.gif Taki sobie ale działa tongue.gif Oto on:

  1. <?php
  2.  
  3.  
  4.  
  5. $start = time();
  6. set_time_limit(999663999999);
  7.  
  8.  
  9.  
  10.  
  11. function get_file_contents($url)
  12. {
  13.  
  14. $read = curl_init();
  15. curl_setopt ($read, CURLOPT_URL, $url);
  16. curl_setopt ($read, CURLOPT_HEADER, false);
  17. curl_setopt($read, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookies.txt');
  18. curl_setopt($read, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookies.txt');
  19. curl_exec ($read);
  20. curl_close ($read);
  21. $file = ob_get_contents();
  22. return $file;
  23. }
  24.  
  25.  
  26. $url="http://rapidshare.com/";
  27. $strona = get_file_contents($url);
  28.  
  29. preg_match("/action=\"(.*?)\" enctype/is", $strona, $form1); //
  30.  
  31.  
  32. echo $form1[1];
  33.  
  34.  
  35.  
  36.  
  37. $postFields['zmienna1'] = 'wartość1';
  38. $postFields['filecontent'] = '@' . dirname(__FILE__) . '/gg77.exe';
  39. $ch = curl_init("$form1[1]");
  40. curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
  41. curl_exec($ch);
  42. curl_close($ch);
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49. $rozmiar = filesize('gg77.exe');
  50. $koniec = time();  
  51. echo (round(($rozmiar / 1048576), 2)).' MB wysłano w '.($koniec - $start).' sekund';
  52. $rozmiar = $rozmiar / 1048576;
  53. $czas = $koniec - $start;
  54. $predkosc = $rozmiar / $czas;
  55. $zaokr=round($predkosc, 2); 
  56. echo ', srednia predkosc to '.$zaokr.'MB/s';
  57. echo '<BR><BR><BR><BR>';
  58. ?>



gg77.exe < w kodzie to nazwa pliku który chcemy wysłać smile.gif

Pozdrawiam!!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.