Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: upload pliku do stworzonego katologu
Forum PHP.pl > Forum > Przedszkole
DeBoer
Witam!

Mam problem z uploadem plików do nowopowstałego katalogu.
Mam kod:
Kod
<?php
$plik_tmp = $_FILES['plik']['tmp_name'];
$plik_nazwa = $_FILES['plik']['name'];
$plik_rozmiar = $_FILES['plik']['size'];
$folder = '1002';
if(is_uploaded_file($plik_tmp))
{
     mkdir ("upload/$folder/", 0777);
     @chmod("upload/$folder/", 0777);
    
      move_uploaded_file($plik_tmp, "upload/$folder/$plik_nazwa");
      move_uploaded_file($plik_tmp, "upload/$plik_nazwa");
     echo "Plik: <strong>$plik_nazwa</strong> o rozmiarze
     <strong>$plik_rozmiar bajtów</strong> został przesłany na serwer!";
}


?>


Safe_mode jest włączony.
Problem jest taki:
- nie mogę kopiować/uploadować pliku do folderu "upload/$folder/", - folder zostaje tworzony na serwerze z prawami 0777 - sprawdzałem
- nie ma problemu z kopiowaniem/uploadem do folderu "upload/.

Dziękuję z góry za pomoc.
artega
1. Stosuj odpowiedni bbcode dla kodu PHP
2. Wyłącz safe_mode jeżeli to możliwe i ucz się dobrych praktyk programowania
3. Przeczytaj noty dotyczące chmod i move_uploaded_file dla safe_mode
4. Usuń @ przed chmod
5. Zabezpieczaj się przed złośliwie zmodyfikowaną nazwą pliku w $_FILES['plik']['name']
Poza tym, co dokładnie się dzieje?
DeBoer
Dzieje się to co napisałem:

Na serwerze powstaje nowy folder: 1002 z prawami 0777.
Uploadowany jest plik tylko do folderu, które sobie stworzyłem poprzez ftp tj. /upload/.
Niestety plik, który chcę uploadować do świeżo stworzonego folderu /1002/ nie jest tam przenoszony.
artega
Powodem nie przenoszenia pliku jest najprawdopodobniej safe_mode. move_uploaded_file rzuci ostrzeżenie w razie niepowodzenia, które powinno wyjaśnić sprawe. Domyślam się, że ma coś wspólnego z UID. Dokumentacja wspomina o kilku ważnych rzeczach na ten temat.
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.