Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z uploadem w PHP
Forum PHP.pl > Forum > PHP
bulaga
WItam, mam problem z uplodem plikow z poziomu pzregladrki:

skrypt standardowy:

Kod:
  1. <?php
  2. $plik_tmp = $_FILES['plik']['tmp_name'];
  3. $plik_nazwa = $_FILES['plik']['name'];
  4. $plik_rozmiar = $_FILES['plik']['size'];
  5.  
  6. if(is_uploaded_file($plik_tmp)) {
  7. move_uploaded_file($plik_tmp, "pliki/$plik_nazwa");
  8. //copy($plik_tmp, "upload/$plik_nazwa");
  9. echo "Plik: <strong>$plik_nazwa</strong> o rozmiarze
  10. <strong>$plik_rozmiar bajtów</strong> został przesłany na serwer!";
  11. }
  12. ?>


W phpinfo() patrzylem upload jest wlaczony

Kod:
  1. file_uploads On On
  2. upload_max_filesize 2M 2M
  3. upload_tmp_dir no value no value


I dostaje taki blad:

Kod:
  1. Warning: move_uploaded_file(pliki/teacher_contact.php) [function.move-uploaded-file]: failed to open stream: Read-only file system in /mnt/ibis/zurek/PublicHTML/up.php on line 32
  2.  
  3. Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/var/tmp/phpgmIgy1' to 'pliki/teacher_contact.php' in /mnt/ibis/zurek/PublicHTML/up.php on line 32


linia 32 to:
Kod:
move_uploaded_file($plik_tmp, "pliki/$plik_nazwa");



Co jest nie tak, bardzo prosze o pomoc, na innym serwerze ten sam skrypt mi dziala...

PS. chmod dla 'upload' jest 777
vokiel
Nie zastanowiło Cię, że upload_tmp_dir jest bez wartości?
Kod
upload_tmp_dir   no value   no value


Utwórz katalog tmp w katalogu głównym konta/witryny, nadaj mu np 777 i zobacz wtedy
bulaga
vokiel dzieki za odpowiedz, niestety zrobilem jak kazales, nie pomoglo ;/

Na innym serwerze na ktorym to dziala jest podobnie 'upload_tmp_dir no value no value'

Z czym jeszcze moge sprobowac ?
erix
Pokaż, jak zrobiłeś.
bulaga
1. /var/tmp ma prawa 777
2. sprobowalem utworzyć na moim koncie w katalogu głównym i w PublicHTML katalog 'tmp' i dawałem prawa 777, tez nie pomogło...

$_FILES['plik']['tmp_name'] zwraca mi: /var/tmp/phpit2CCE

erix
Samo utworzenie katalogu nic nie da. Jeszcze trzeba zmienić to, o czym ~vokiel wspomniał.

Poza tym, masz funkcję is_writable, dowiesz się, czy na pewno.
bulaga
erix czyli co konkretnie mam zmienić bo nie za bardzo rozumiem, poza tym linuxowiec ze mnie marny...

Wyniki 'is_writable'
test.txt The file is not writable //plik z dysku
/var/tmp/phpgmIgy1The file is writable //tymczasowa nazwa

erix
Sprawdzić tą funkcją, czy masz uprawnienia do zapisu pliku źródłowego/docelowego.

Po treści komunikatu, moim zdaniem najlepiej by było pogadać z administratorem serwera, gdyż podejrzewam, że system plików, na który przenosisz plik jest zamontowany tylko do odczytu.
bulaga
erix to zastosowalem funkcje is_wirtable dla plików:

$plik_tmp = $_FILES['plik']['tmp_name'];
$plik_nazwa = $_FILES['plik']['name'];

wyniki:

$plik_tmp is writable
$plik_nazwa is not writable

Napisalem do administratora serwera mojego ale nie moge sie doeczkac na odp... czy nic wiecej nie jestem w stanie zrobic ?


erix, dzięki za pomoc, tak jak przewidywałeś, na serwerze było ustawione Read-only, więc nic nie mogłem zrobić...

dzięki i pozdrawiam
P.
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.