( SzBlackY | 2012. 09. 05., sze – 13:17 )

A $_FILES tömbben levő mime type mindig a klienstől jön, ezért érdemes inkább a http://hu2.php.net/manual/en/function.mime-content-type.php vagy még jobb, az azon oldalon linkelt FileInfo függvényekkel megnézni (finfo_file-nál példakód is van hozzá).

Persze jó esetben php-ből nem tudsz a tmp-dir-ben mászkálni, úgyhogy move_uploaded_file()-al először át kell tenned egy saját ideiglenes helyre, aztán belenézni a fájl típusba, és ez alapján törölni az új ideiglenes helyről, vagy átrakni a véglegesre.

Az exec/shell_exec stb. ha tényleg jól használod (escapeshellarg, kőkeményen ellenőrizve a usertől érkező adatokat, változókat csak paraméterként használva etc., nem `scriptem.sh $_GET['foo']` formában) belefér, különösen, ha csak "saját" felhasználásra van (net felől nem érhető el). Azért amit lehet érdemesebb "natívra" átírni.

BlackY