![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 26.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
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. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 174 Pomógł: 42 Dołączył: 22.07.2007 Skąd: /dev/random Ostrzeżenie: (0%) ![]() ![]() |
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? |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 26.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
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. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 174 Pomógł: 42 Dołączył: 22.07.2007 Skąd: /dev/random Ostrzeżenie: (0%) ![]() ![]() |
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.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 02:18 |