Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Ścieżka dostępu
Forum PHP.pl > Forum > Przedszkole
Generic
Witam. Mam podany poniżej skrypt, który przesyła pliki do folderu. Skrypt działa i pliki ładnie uploadują się natomiast po przesłaniu nie wiadomo gdzie zostały zapisane ponieważ nie można ich znaleźć ani w public_html ani w picture_temporary. Co może być przyczyną tego problemu?

Zdjęcie pokazujące układ folderów:



  1.  
  2. // Katalog w którym będą zapisywane pliki.
  3.  
  4. if (file_exists("public_html/picture_temporary".$_FILES["file"]["name"]))
  5. {
  6. echo "<div class='error'>"."(".$_FILES["file"]["name"].")"." already exists. "."</div>";
  7. }
  8. else
  9. {
  10. move_uploaded_file($_FILES["file"]["tmp_name"],
  11. "public_html/picture_temporary");
  12. echo "<div class='sucess'>"."Stored in: " .
  13. "public_html/picture_temporary" . $_FILES["file"]["name"]."</div>";
  14. }
  15. }
  16. }
  17. else
  18. {
  19. echo "<div class='error'>Invalid file</div>";
  20. }
nospor
Po czym wnioskujesz ze skrypt dziala i ze sie pliku uploadują? W zaden sposob tego w skrypcie nie sprawdzasz tylko radosnie przyjales ze sie przenoszą....
move_uploaded_file() zwraca true albo false i to na tej podstawie masz sprawdzac czy sie skopiowalo czy nie a nie ze sobie zalozyles ze sie kopiuje...
Generic
Gdy ustawię w ścieżce index.html to wtedy wszystko uploaduje się do folderu w którym znajduje się index.html czyli w public_html co znaczy że jednak działa.
engineS
  1. move_uploaded_file($_FILES["file"]["tmp_name"], "public_html/picture_temporary/".$_FILES["file"]['name']);

Generic
Niestety usunięcie kropki nie pomaga, próbowałem również w ten sposób zrobić, ale efekt jest ten sam.
Turson
Rozłącz się z ftp i połacz jeszcze raz. Może teraz będą
Generic
Nadal nic a w folderze w którym powinien znajdować się plik jest napisane Empty directory listing.
Crozin
Cytat
Gdy ustawię w ścieżce index.html to wtedy wszystko uploaduje się do folderu w którym znajduje się index.html czyli w public_html co znaczy że jednak działa.
To znaczy, że działa dla danego folderu. Inny może mieć już zupełnie inne uprawnienia dostępu.

Nie sprawdzasz czy kolejne etapy wgrywania pliku kończą się pomyślnie, po czym błądzisz po omacku:
1. Sprawdź czy plik w ogóle wgrał się na serwer: http://www.php.net/manual/pl/features.file-upload.errors.php
2. Sprawdź czy wgrany plik udało się poprawnie przenieść: move_uploaded_file (patrz: zwracana wartość)
engineS
Strzelam że albo sciezka jest zła, albo chmod katalogu.
Dla testu:
  1. $dir = $_SERVER['DOCUMENT_ROOT'].'/picture_temporary/';
  2. if(!move_uploaded_file($_FILES["file"]["tmp_name"], $dir.$_FILES["file"]['name'])) {
  3. echo $dir.' - błąd upload do katalogu';
  4. } else {
  5. echo $dir.' - ok upload do katalogu';
  6. }
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.