Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]move_uploaded_file
Forum PHP.pl > Forum > Przedszkole
kask18
Cześć, mam problem z prawidłowym wysłaniem Plików (np. tekstowego) na serwer. Wszystkie skrypty uruchamiam na wampie 2.0. Korzystam ze skryptów znalezionych Tutaj . folder projektu to np Send tworze w nim pliki identyczne jak w źródle i nie działa. Jest jakiś problem z dostępem do katalogu wybranego prze zemnie (w oryginalnym skrypcie katalog foto). Gry próbuje odpalić skrypt
to pojawiają się komunikaty o błędzie
Warning: move_uploaded_file(C:/wamp/www/foto/http.txt) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\wamp\www\send2\plik2.php on line 22

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\wamp\tmp\php1AE.tmp' to 'C:/wamp/www//foto/http.txt' in C:\wamp\www\send2\plik2.php on line 22

Jednak gdy zmienię linię:
  1. <?php
  2. move_uploaded_file($_FILES['plik']['tmp_name'],
  3.                 $_SERVER['DOCUMENT_ROOT'].'/foto/'.$_FILES['plik']['name']);
  4. ?>


na
  1. <?php
  2. move_uploaded_file($_FILES['plik']['tmp_name'],$_FILES['plik']['name']);
  3. ?>


wszystko działa ok.
Katalog foto znajduje się w w folderze z skryptem. Z góry dzięki za pomoc
ziqzaq
Sprawdź:
Czy katalog foto ma ustawione prawa do zapisu (chmod 777).
Czy śceżka którą podajesz jest poprawna.

Przydatne funkcje: is_dir, is_writable.
Vexator
C:/wamp/www//foto/http.txt

masz tam "//" dlatego nie możesz przenieść.
powinno być:
  1. <?php
  2. move_uploaded_file($_FILES['plik']['tmp_name'], $_SERVER['DOCUMENT_ROOT'].'foto/'.$_FILES['plik']['name']);
  3. ?>
pyro
Cytat(Vexator @ 30.12.2008, 12:43:05 ) *
C:/wamp/www//foto/http.txt

masz tam "//" dlatego nie możesz przenieść.
powinno być:
  1. <?php
  2. move_uploaded_file($_FILES['plik']['tmp_name'], $_SERVER['DOCUMENT_ROOT'].'foto/'.$_FILES['plik']['name']);
  3. ?>




Nie gadaj bzdur...
Vexator
Cytat(pyro @ 30.12.2008, 12:48:24 ) *
Nie gadaj bzdur...

nie oftopuj, tylko podaj rozwiązanie.

p.s. o ile znasz.
kask18
Vexator zauważyłem to samo i poprawiłem samemu, to nic nie daje

Edycja

snitch.gif

Problem już rozwiązałem sam, błędna była ścieżka do katalogu. Temat Zamknięty.
Vexator
załóżmy, że skrypt jest w folderze www/strona/, a fotki mają być w www/foto/
czy jak zrobisz tak, to zadziała?
  1. <?php
  2. move_uploaded_file($_FILES['plik']['tmp_name'],"../foto/".$_FILES['plik']['name']);
  3. ?>


".." wyjdziesz z strona katalog wyżej, a później do foto.
kask18
Vexator własnie w tym był problem. Nie zwróciłem na to uwagę. Dzięki za propozycje rozwiązania problemu.

Edit

A czy da się tak zrobić by skrypt w skrypcie załóżmy plik.php wstawić zmienną która będzie przechowywała całą ścieżkę dostępu do plik.php.

np. plik.php znajduje się w www/strona/foto/plik.php
czy da się to jakoś odczytać i wpisać w zmienną questionmark.gif
Vexator
coś takiego masz na myśli? getcwd()

zakładając, że nie użyłeś nigdzie chdir() to powinieneś otrzymać "www/strona/foto/"
zrób sobie echo getcwd(); i zobacz co ciekawego wyszło.
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.