Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> upload i cURL
bagsiur
post
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 28.11.2008
Skąd: Będzin

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


ehh jak to mówią witki opadają (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) usiłuję napisać skrypt do uploadu plików na serwer, na inny serwer niż będzie stać stronka... dzięki google i i php manual wyskrobałem coś takiego: (patrz niżej)... z dokumentacji php wynika że wszystko powinno być git. Przepierzyłem google w z dłuż i w szerz i dalej skrypt nie działa, a próbowałem już wszystkiego.... Skrypt nie działa nawet w uproszczonej wersji uploadujacej plik przez serwer (moja maszyna) na cba.pl... na początek chce uzyskać jakikolwiek efekt, chce zobaczyć że ta metoda działa i chce w ten sposób przesłać cokolwiek... oto uproszczona wersja skryptu...

  1. <?php
  2. $link = 'http://www.grodziec.cba.pl';
  3. $aaa = 'Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.5) Gecko/2008121622 Ubuntu/8.10 (intrepid) Firefox/3.0.5';
  4.  
  5. $ch = curl_init('http://www.grodziec.cba.pl');
  6. curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
  7. curl_setopt($ch, CURLOPT_USERAGENT, $aaa);
  8. curl_setopt($ch, CURLOPT_URL, $link);
  9. curl_setopt($ch, CURLOPT_POST, 1);
  10. curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
  11. curl_exec($ch);
  12.  
  13.  
  14. $plik = '@' . dirname(__FILE__) . '/bbb.jpg';
  15. curl_setopt($ch, CURLOPT_POSTFIELDS, $plik);
  16. curl_setopt($ch, CURLOPT_POST, 1);
  17. echo curl_exec($ch);
  18. curl_close($ch);
  19. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ziqzaq
post
Post #2





Grupa: Zarejestrowani
Postów: 428
Pomógł: 128
Dołączył: 17.06.2007

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


Wprawdzie problem jest już rozwiązany, ale odniosę się do pierwszego posta bo można się na tym przejechać (ja tak miałem).
W tym wypadku:
  1. <?php
  2. curl_setopt($ch, CURLOPT_POST, 1); // jesli to ustawiamy to ma byc _pierwsze_
  3. curl_setopt($ch, CURLOPT_POSTFIELDS, $plik); // dopiero pozniej pola post
  4. ?>

kolejności ustawiania opcji curla jest istotna (komentarz w manualu) (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Jak widać w twoim pierwszym poście - miałeś na odwrót i w ogóle nie wysyłało wartości post ($_POST i $_FILES były poprostu puste). Dodatkowo przekazywałeś w setopt ciąg znaków (samą ścieżkę do pliku) a ta opcja przyjmuje:
Cytat
This can either be passed as a urlencoded string like 'para1=val1&para2=val2&...' or as an array with the field name as key and field data as value.

Sprawdzane na php-5.2.8.
Pozdrawiam.
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: 26.12.2025 - 08:26