Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Upload - problem z mime type
Forum PHP.pl > Forum > PHP
ladovnik
Witam. Zrobiłem sobie skrypt uploadu. Chciałem zabezpieczyć tak formularz, aby można było przesłać tylko pliki Flash Video (FLV). Niestety, gdy pobieram typ mime uploadowanego pliku, zwraca mi application/octet-stream przy czym, wysyłany plik to jest video/x-flv.

Dodam, że dodałem do serwera poprzez plik .htaccess tym mime dla pliku .flv, bo domyślnie nie było.

Pozdrawiam,
ladovnik

PS Obecnie zrobiłem sprawdzanie samego rozszerzenia, ale to nie wystarczy, bo można zmienić z .exe na .flv i już... a chciałbym sprawdzać mine by przy okazji sprawdzić poprawność pliku..
erix
Sprawdzaj MIME po stronie serwera:
  1. <?php
  2. $mime = shell_exec('file -bi '.escapeshellarg($plik));
  3. ?>

NIGDY nie polegaj na typie wysyłanym przez przeglądarkę.
ladovnik
Niestety tej funkcji użyć nie mogę, ponieważ na większości serwerów, nawet tych płatnych, jest zablokowana, a ja robię pewien system dla ludzi, z których większość będzie go używać na darmowych hostingach...

Poza tym głównym zabezpieczeniem jest sprawdzanie rozszerzenia, mime chciałem sprawdzać dla wygody aby sprawdzić poprawność pliku, jeśli by ktoś zamiast skonwertować film na FLV tylko zmienił rozszerzenie...
erix
Cytat
ponieważ na większości serwerów, nawet tych płatnych, jest zablokowana

Jeśli badziewny serwer, to zablokowane. Porządne udostępniają. A te, które nie, to cóż - admini idą na łatwiznę.

Jeśli sprawdzasz rozszerzenie/MIME od użytkownika, to nie jest sprawdzanie.

Albo sprawdzisz u siebie, albo narazisz skrypt/serwer. Zostaje tylko mime_content_type" title="Zobacz w manualu PHP" target="_manual/fileinfo_file" title="Zobacz w manualu PHP" target="_manual.
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.