Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Upload pliku
Forum PHP.pl > Forum > Przedszkole
Max Damage
Próbowałem już nawet różnych typów i zawsze pisze mi to samo (Plik nie jest obrazkiem). Co jest nie tak?

  1. <?php
  2. if ($_FILES['plikuzytkownika']['error'] > 0)
  3. {
  4. echo 'Problem: ';
  5. switch ($_FILES['plikuzytkownika']['error'])
  6. {
  7. case 1: echo 'Rozmiar pliku przekroczył wartość upload_max_filesize'; break;
  8. case 2: echo 'Rozmiar pliku przekroczył wartość max_file_size'; break;
  9. case 3: echo 'Plik wysłany tylko częściowo'; break;
  10. case 4: echo 'Nie wysłano żadnego pliku'; break;
  11. }
  12. }
  13.  
  14. if ($_FILES['plikuzytkownika']['type'] != 'image/jpeg')
  15. {
  16. echo 'Problem: plik nie jest obrazkiem';
  17. }
  18.  
  19. $lokalizacja = '/'.$_FILES['plikuzytkownika']['name'];
  20.  
  21. if (is_uploaded_file($_FILES['plikuzytkownika']['tmp_name'])) 
  22. {
  23.  if (!move_uploaded_file($_FILES['plikuzytkownika']['tmp_name'], $lokalizacja))
  24.  {
  25. echo 'Problem: Plik nie może być przeniesiony';
  26.  }
  27. }  
  28. echo 'Plik wysłany<br/>';
  29. ?>
nospor
A ty wogole wysylasz ten plik? Zrob najprostrzą rzecz na swiecie:
  1. <?php
  2. print_r($_FILES);
  3. ?>

I sprawdz czy wogole masz tam to, co powinienes.

ps: juz mogles sie tego nauczyc...
Max Damage
No raczej tak:
  1. <?php
  2. Array ( [plikuzytkownika] => Array ( [name] => 4.jpg [type] => image/jpeg [tmp_name] => /tmp/php3JRnU4 [error] => 0 [size] => 46275 ) )
  3. ?>


Cytat(nospor)
ps: juz mogles sie tego nauczyc...

A umiem, tylko nie zawsze o tym pomyśle....
nevt
A możesz zmodyfikować ten fragment?
  1. <?php
  2. if ($_FILES['plikuzytkownika']['type'] != 'image/jpeg')
  3. {
  4. echo 'Problem: plik nie jest obrazkiem, type=('.$_FILES['plikuzytkownika']['type'].')';
  5. }
  6. ?>

W kodzie błędu nie widzę - jedyne co mi przychodzi do głowy, to różne strony kodowe skryptu php i stronki z formularzem wysyłającym plik. Wtedy 'image/jpeg' (ISO-...) może nie być równy 'image/jpeg' (UTF-8)

Pozdrawiam.
Max Damage
Miałeś racje. Dopisałem meta tag z kodowaniem utf-8 i zadziałało. Wielkie 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.