Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Upload plików - Problem
Forum PHP.pl > Forum > PHP
karolziom22
Mam problem z uploadem wielu plików przy pomocy formularza w html5. Wywala błąd "Nieprawidlowy plik"
  1. <?php
  2. if(isset($_FILES)){
  3. $uploaddir = '../www2/mest/pliki';
  4.  
  5. foreach($_FILES['plik']['error'] as $error){
  6. if($error == UPLOAD_ERR_OK){
  7. $new_name = $uploaddir.$_FILES['plik']['name'];
  8. $temp_name = $_FILES["plik"]["tmp_name"];
  9. echo $_FILES["plik"]["tmp_name"];
  10. if(is_uploaded_file($temp_name)){
  11. echo "Plik zostal zaladowany.\n";
  12. }
  13. else{
  14. echo "Nieprawidlowy plik\n<br>";
  15. }
  16. }
  17. else{
  18. echo("Wystapil blad: ");
  19. switch($_FILES['plik']['error']){
  20. case UPLOAD_ERR_INI_SIZE :
  21. case UPLOAD_ERR_FORM_SIZE :
  22. echo("Przekroczony maksymalny rozmiar pliku!\n");
  23. break;
  24. case UPLOAD_ERR_PARTIAL :
  25. echo("Odebrano tylko czesc pliku!\n");
  26. break;
  27. case UPLOAD_ERR_NO_FILE :
  28. echo("Plik nie zostal pobrany!\n");
  29. break;
  30. default :
  31. echo("Nieznany typ bledu!\n");
  32. }
  33. }
  34. }
  35. echo '<pre>';
  36. print_r($_FILES);
  37. echo '</pre>';
  38. }
  39. ?>
mortus
Upewnij się, że formularz ma ustawione odpowiednie kodowanie enctype:
  1. <form action="" method="" enctype="multipart/form-data">
  2. <!-- pola formularza -->
  3. </form>

Jeśli przesyłasz duże pliki albo przesyłasz ich bardzo dużo upewnij się, że masz poustawiane odpowiednio duże wartości w pliku konfiguracyjnym PHP )php.ini). Mowa tu o:
- upload_max_filesize,
- max_file_uploads.

Ostatecznie sprawdź sobie zawartość tablicy $_FILES, aby zweryfikować czy i jakie pliki są przesyłane:
  1. echo '<pre>';
  2. print_r($_FILES);
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.