Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: $_FILES['plik']['type'] - tym rozpoznawać rodzaj pliku, czy rozszerzeniem?
Forum PHP.pl > Forum > PHP
Apocalyptiq
Jak rozpoznawany jest typ pliku przez to $_FILES['plik']['type']? Jak napisałem w tytule, plik mp3 zwraca mi typ application/octet-stream. Czyli to nie jest dobry sposób do sprawdzania rozszerzenia uploadowania pliku? Lepszy jest explode (kropką, i wyjąć ostatni rekord) albo preg_match_all?
Chciałem sprawdzać, czy uploadowany plik jest plikiem mp3 (tylko takie pliki odtwarza mi flashowy player na stronce).
erix
Cytat
Chciałem sprawdzać, czy uploadowany plik jest plikiem mp3 (tylko takie pliki odtwarza mi flashowy player na stronce).

MIME jest zawsze najbezpieczniejsze. Skoro przy uploadzie zwraca Ci błędny typ, to sprawdź go na serwerze. winksmiley.jpg
Crozin
@erix: niekoniecznie. Typ mime jest ustawiany i wysyłany przez przeglądarkę, czyli istnieje możliwość wstawienia tam dowolnej wartości

Co do tematu: aby pobrać rozszerzenie z nazwy pliku używa się pathinfo" title="Zobacz w manualu PHP" target="_manual, a nie bawi z explode.
Najlepiej jest sprawdzić zarówno rozszerzenie jak i typ MIME.
erix
Cytat
@erix: niekoniecznie. Typ mime jest ustawiany i wysyłany przez przeglądarkę, czyli istnieje możliwość wstawienia tam dowolnej wartości

Ale ja nie mówię, żeby sprawdzać to, co przeglądarka wysyła, ale odpalić file -bi na zapisanym pliku. Może przeglądarka wysyłać application/x-mowie-sobie-co-chce, sprawdzisz samodzielnie, to możesz polegać na samym MIME. tongue.gif
Crozin
Ahh.. w takim razie zwracam honor. :]
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.