Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> ftp_get: No such file or directory
q3trm
post
Post #1





Grupa: Zarejestrowani
Postów: 83
Pomógł: 1
Dołączył: 26.02.2013

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


Cześć.


Zacząłem się bawić z uploadowanie plików serwera, za pomocą funkcji oferowanych przez PHP. I mam problem z pierwszą próbą uploadu pliku zdalnego.

Dodam, że skrypt uploaduje pliki z tego samego serwera, tylko z innego katalogu. Wiem, że do takich operacji istnieją inne funkcje, natomiast ja to robię w celach naukowych :-o .

  1. $localfile ='/home/a2485165/public_html/lala.txt';
  2. $remotefile ='/home/a2485165/temp/t.txt';



Tak wyglądają plik lokalny(localfile) i zdalny(remotefile).

  1.     
  2. $fo = fopen ($localfile, 'w');
  3. $suces = ftp_fget($connect, $fo, $remotefile, FTP_ASCII);


I w tym momencie dostaję: Warning: ftp_fget() [function.ftp-fget]: Can't open /home/a2485165/temp/t.txt: No such file or directory
Katalog z plikiem istnieje , sprawdzałem za pomocą funkcji file_exists, chmod dałem 777 zapis + odczyt. Pomóżcie mnie naprowadzić na rozwiązanie problemu.


ftp_connect() zwraca zasób(strumien ftp), ftp_login() true

Ten post edytował q3trm 26.02.2013, 21:39:04
Go to the top of the page
+Quote Post
Konochamaru
post
Post #2





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 26.02.2013

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


z jakiego poziomu katalogu to robisz ? Być moze plik instnieje tak jak mówisz tylko jest zła ścieżka
Go to the top of the page
+Quote Post
q3trm
post
Post #3





Grupa: Zarejestrowani
Postów: 83
Pomógł: 1
Dołączył: 26.02.2013

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


Z public_html.

To ciekawe, file_exists($remotefile), sprawdza czy plik istnieję w odrębnym katalogu i zwraca TRUE. Funkcja file_exists nie zależnie od katalogu w jakim zostaję wywołana, potrafi sprawdzić istnienie każdego pliku na serwerze?


W ramach testu, zainicjowałem funkcję touch() z ścieżką ze zmiennej $remotefile(dodając nazwę nieistniejącego pliku), rezultat był taki, że nic się nie stało, ani błędu, ani akcji. Kolejnym krokiem było sprwdzenie czy ścieżka jest poprawna, więc specialnie podmieniłem ścieżkę w funkcji touch() na nieprawidłową, wydrukowało błąd, czyli ścieżki są dobre (IMG:style_emoticons/default/smile.gif) . Dodam, że korzystam z usług hostingowych 000webhost.

Ten post edytował q3trm 26.02.2013, 23:15:32
Go to the top of the page
+Quote Post
dzastin
post
Post #4





Grupa: Zarejestrowani
Postów: 29
Pomógł: 2
Dołączył: 27.02.2013

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


file_exist sprawdza czy plik istnieje na dysku na serwerze na którym wywoływany jest php, ftp_get obsługuje zdalny katalog z obcego serwera i korzeń systemu plików jest ustalany przez demona ftp. Ponieważ w Twoim przypadku jest to ten sam serwer, to wydaje Ci się, że ścieżka dla ftp_get jest poprawna, a w rzeczywistości nie jest. Głównym katalogiem dla Twojego ftp jest prawdopodobnie /home/a2485165/, więc jako ścieżkę podałbym /temp/t.txt
Go to the top of the page
+Quote Post
q3trm
post
Post #5





Grupa: Zarejestrowani
Postów: 83
Pomógł: 1
Dołączył: 26.02.2013

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


Cytat(dzastin @ 27.02.2013, 17:59:52 ) *
file_exist sprawdza czy plik istnieje na dysku na serwerze na którym wywoływany jest php, ftp_get obsługuje zdalny katalog z obcego serwera i korzeń systemu plików jest ustalany przez demona ftp. Ponieważ w Twoim przypadku jest to ten sam serwer, to wydaje Ci się, że ścieżka dla ftp_get jest poprawna, a w rzeczywistości nie jest. Głównym katalogiem dla Twojego ftp jest prawdopodobnie /home/a2485165/, więc jako ścieżkę podałbym /temp/t.txt



I tak jest jak mówisz (IMG:style_emoticons/default/oneeyedsmiley02.png) , dzięki.
Go to the top of the page
+Quote Post

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: 18.09.2025 - 22:25