Mam taki problem - otoz stworzylem skryt uploadujacy plik (Cv) na serwer. Mozliwy jest upload tylko 5 typow plikow - *.pdf, *txt, *rtf, *doc i *.docx. Jak na razie dziala to w oparciu o sprawdzanie typu MIME poszczegolnych plikow. I TU wasnie tkwi problem - uzytkownik moze zmienic rozszerzenie pliku *.exe na *.txt powiedzmy i pozniej moj klient uruchomi taki plik ktora jest w rzeczywistosci szkodliwa aplikacja lub szkodliwym plikiem *.vb, *.js badz jeszcze innym... Czy mozna sprawdzic jaki typ pliku jest rzeczywiscie uplodowany? Sprawdzania naglowkow jest mozliwe przy plikach graficznych wiec jak to zrobic przy dokumentach?
Z gory dziekuje z odpowiedz
Oto kod skryptu:
<?php { if (($_FILES['userfile']['type'] == 'application/msword') || ($_FILES['userfile']['type'] == 'application/pdf') || ($_FILES['userfile']['type'] == 'application/vnd.openxmlformats-officedocument.wordprocessingml.document') || ($_FILES['userfile']['type'] == 'text/plain') || ($_FILES['userfile']['type'] == 'application/rtf')) { $strUploadDir = 'Cv/' .$correctdate."-". $_FILES['userfile']['name']; { } else { } } else { echo '<div id=\"MsgUpload\">Sorry. Wrong file type. Only particular file types are accepted: *.doc, *.docx, *.txt, *.rtf, *.pdf .</div>'; } } ?>