Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]Pobieranie plików i otwieranie ich (cURL)
cielos
post
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 15.08.2006

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


Witam, mam 2 pytania:
1. Czy za pomocą skryptu php mogę ściągnąć plik na serwer z innego serwera? Nie mogę tego pliku otworzyć w skrypcie za pomocą funkcji file, fopen itp. Najprawdopodobniej ma chmody tak ustawione. Czy pomimo tego da się ten plik ściągnąć? Przez przeglądarkę, wpisując link mogę go ściągnąć bez problemu.
2. Czy jest jakiś limit w php na wielkość otwieranego pliku za pomocą funkcji file lub gzfile i czy da się go zmienić?

Serwer na którym skrypty są wywoływane ma wyłączony tryb safe mode.
Pozdrawiam

Ten post edytował cielos 20.02.2008, 18:50:31
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
GrayHat
post
Post #2





Grupa: Zarejestrowani
Postów: 566
Pomógł: 18
Dołączył: 23.08.2003
Skąd: Łomża

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


http://php.net/fsockopen
http://php.net/fgets
Go to the top of the page
+Quote Post
cielos
post
Post #3





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 15.08.2006

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


Ok, ale jak wpisuje do robie funkcje fsockopen jako uchwyt do pliku i chce go odczytać to nie idzie. Jak mam to zrobić, żeby odczytać ten plik, albo ściągnąć go? Co mam dokładniej wpisać?
Go to the top of the page
+Quote Post
netmare
post
Post #4





Grupa: Zarejestrowani
Postów: 285
Pomógł: 37
Dołączył: 18.12.2007
Skąd: Łódź

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


Jeśli możesz zmienić konfigurację serwera, to możesz sobie włączyć allow_url_fopen = On w php.ini.
Jak nie to poczytaj o cURL.
Jeśli nie ma cURL, robisz fsockopen, wysłasz zapytanie HTTP, a następnie odczytujesz odpowiedź.
Go to the top of the page
+Quote Post
cielos
post
Post #5





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 15.08.2006

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


Czy da się za pomocą cURL otworzyć plik w postaci tabeli?
Do konfiguracji serwera nie mam dostępu.
Go to the top of the page
+Quote Post
nowotny
post
Post #6





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


Cytat(cielos @ 18.02.2008, 14:53:24 ) *
Czy da się za pomocą cURL otworzyć plik w postaci tabeli?

Nie rozumiem pytania... co masz na myśli poprzez "plik w postaci tabeli"...?
Go to the top of the page
+Quote Post
cielos
post
Post #7





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 15.08.2006

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


Chce otworzyć/zapisać ten plik w postaci tabeli, czyli tak jak się otwiera plik za pomocą file()
Go to the top of the page
+Quote Post
nowotny
post
Post #8





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


Możesz wczytać zawartość do stringa i potem zrobić explode po znakach nowej linii... będziesz miał plik w tablicy...
Go to the top of the page
+Quote Post
cielos
post
Post #9





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 15.08.2006

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


Niby też prawda (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Tylko, że ja pierwszy raz widzę tą funkcje cURL. Pomógłbś mi napisać funkcje odczytującą zawartość pliku z serwera?
Go to the top of the page
+Quote Post
nowotny
post
Post #10





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


Cytat(cielos @ 18.02.2008, 19:48:24 ) *
Niby też prawda (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Tylko, że ja pierwszy raz widzę tą funkcje cURL. Pomógłbś mi napisać funkcje odczytującą zawartość pliku z serwera?

A co...? manuala i google zamknęli...? :/

Bierzesz funkcję curl_init" title="Zobacz w manualu PHP" target="_manual, ustawiasz odpowiednie opcje połączenia za pomocą curl_setopt" title="Zobacz w manualu PHP" target="_manual i wynik curl_exec" title="Zobacz w manualu PHP" target="_manuala zapisujesz do zmiennej... i masz całą stronę w stringu...
Go to the top of the page
+Quote Post
cielos
post
Post #11





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 15.08.2006

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


Czy to działa również przy otwieraniu plików tekstowych?

Ten post edytował cielos 18.02.2008, 20:33:02
Go to the top of the page
+Quote Post
nowotny
post
Post #12





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


Jejq... to sobie sprawdź... cURL działa prawie tak jakby to była taka wirtualna przeglądarka... jak wpiszesz sobie dany adres w przeglądarce to po podaniu tego samego adresu w cURLu otrzymasz takie same wyniki...
Go to the top of the page
+Quote Post
cielos
post
Post #13





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 15.08.2006

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


No więc zacząłem próby z cURL, ale nie wychodzi mi to za bardzo.
Ściągnąłem gotowy skrypt z manuala:
  1. <?php
  2. $ch = curl_init("http://serwer/plik.txt");
  3. $fp = fopen("example_homepage.txt", "w");
  4. curl_setopt($ch, CURLOPT_FILE, $fp);
  5. curl_setopt($ch, CURLOPT_HEADER, 0);
  6. curl_exec($ch);
  7. curl_close($ch);
  8. fclose($fp);
  9. ?>

Po uruchomieniu wyskakuje mi: "Błąd #7: couldn't connect to host
Gdy wpisuje adres tego pliku w przeglądarce to otwiera mi się bez problemu.
Go to the top of the page
+Quote Post
nowotny
post
Post #14





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


http://serwer/plik.txt to jest twój localhost czy jakiś plik na serwerze w internecie...?
Go to the top of the page
+Quote Post
cielos
post
Post #15





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 15.08.2006

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


Plik na serwerze w internecie. Na serwerze innym niż znajduje się strona.
Go to the top of the page
+Quote Post
nowotny
post
Post #16





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


No to prawdopodobnie musisz jeszcze wysłać jakieś nagłówki... ewentualnie sprawdź sobie jaki konkretnie błąd wyskakuje za pomocą curl_error" title="Zobacz w manualu PHP" target="_manual lub curl_errno" title="Zobacz w manualu PHP" target="_manual...

Może być też tak że twój serwer nie pozwala na nawiązywanie połączeń, ale ja nie znam się na tyle na apachu...

Ten post edytował nowotny 20.02.2008, 19:31:31
Go to the top of the page
+Quote Post
cielos
post
Post #17





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 15.08.2006

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


Zapomniałem tego wstawić na forum ale w skrypcie mam linijkę z curl_errno i z curl_error i właśnie wyskakuje to co napisałem.
Go to the top of the page
+Quote Post
nowotny
post
Post #18





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


No to jak możesz to podaj adres do tego pliku... sprawdzimy... inaczej musisz sam kombinować...
Go to the top of the page
+Quote Post
cielos
post
Post #19





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 15.08.2006

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


http://pl1.plemiona.pl/map/ally.txt
Go to the top of the page
+Quote Post
nowotny
post
Post #20





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


Ten kod co podałeś wcześniej u mnie działa bez problemu na localhoście... Testowałeś na serwerze czy u siebie na localhoście...? Jak na serwerze to najprawdopodobniej coś masz zablokowane...

Ten post edytował nowotny 20.02.2008, 20:11:20
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
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: 21.12.2025 - 00:02