Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Uploadowanie plików
Forum PHP.pl > Forum > PHP
seprob
Witam! Mam mniej więcej taki kod:
  1. $image_filename = $_FILES['item_image']['name'];
  2. $location = '\\Katalog_aplikacji\\'.$image_filename;
  3.  
  4. if (!move_uploaded_file($_FILES['item_image']['tmp_name'], $location)) {
  5. echo "Problem: plik nie może być skopiowany do katalogu docelowego.";
  6.  
  7. }

Problem jest taki, że funkcja move_uploaded_file zwraca fałsz. Próbowałem już kombinować z backslashami, zmieniać katalog tymczasowy czy prawa do niego ale nic to nie dało.
Damonsson
Bardziej chyba tak by to musiało być:

  1. $location = '/Katalog_aplikacji/'.$image_filename;
buliq
Sprawdź co zwraca realpath dla tego katalogu
seprob
Cytat(Damonsson @ 9.07.2013, 09:00:32 ) *
Bardziej chyba tak by to musiało być:

  1. $location = '/Katalog_aplikacji/'.$image_filename;

Ale to jest Windows.


Cytat(buliq @ 9.07.2013, 09:58:15 ) *
Sprawdź co zwraca realpath dla tego katalogu

Dodam, że w zmiennej "location" nie podaję katalogu root serwera.

Wywołanie "realpath($_FILES['item_image']['tmp_name'])" zwraca "C:\Temp\phpF948.tm" natomiast wywołanie "realpath($location)" nic nie zwraca.
buliq
wywołaj realpath dla samego katalogu (bez nazwy pliku)
jak nic nie zwraca to znaczy że nie znalazł, to znaczy ze zła jest ścieżka $location. Nie musisz podawać katalogu root serwera, popełniłeś błąd gdzieś w ścieżce albo ona nie istnieje
wywołaj realpath('/');
sprawdź dirname(__FILE__);
seprob
Cytat(buliq @ 9.07.2013, 13:54:56 ) *
wywołaj realpath dla samego katalogu (bez nazwy pliku)
jak nic nie zwraca to znaczy że nie znalazł, to znaczy ze zła jest ścieżka $location. Nie musisz podawać katalogu root serwera, popełniłeś błąd gdzieś w ścieżce albo ona nie istnieje
wywołaj realpath('/');
sprawdź dirname(__FILE__);

Funkcja realpath dla lokalizacji bez nazwy pliku nic nie zwraca. Wywołanie "realpath('/')" zwraca "C:\". Wywołanie "dirname(__FILE__)" zwraca katalog, w którym są pliki aplikacji. Ale udało się - w zmiennej "location" podałem na początku "dirname(__FILE__)" i działa. Dzięki.
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.