Hallo zusammen,
ich würde gerne mein Dateiupload Script sicherer gestalten, komme aber bei 1&1 nicht weiter. Vielleicht kann mir hier jemand helfen?
Es geht um den MimeType bei Dateiuploads. Den kann man einerseitz prüfen indem man prüft was der Browser übergibt, oder später auf dem Server. Die Browserversion ist mir nicht sicher genug, daher will ich gerne die Version auf dem Server realisieren.
Hierzu habe ich für PHP4 "mime_content_type($_pfad)" bzw. für >PHP5.3 "FileInfo" gefunden.
Eigentlich sind dies ja genau meine Funktionen, doch leider bekomme ich die nicht zum laufen. Ich hab mir ein kleines Testscript gebastelt ...
function gibDateiTyp($_dateiPfad) {
$mimeType = "";
if (function_exists('mime_content_type')) {
$mimeType = mime_content_type($_dateiPfad);
}
else if (function_exists('finfo_open')) {
$finfo = finfo_open(FILEINFO_MIME_TYPE); // return mime type ala mimetype extension
$mimeType = finfo_file($finfo, $_dateiPfad);
finfo_close($finfo);
}
else {
print "Error: MimeType ".$mimeType." von ".$_dateiPfad." konnte nicht ausgelesen werden! Es existiert keine Methode zum Auslesen des MimeTypes.<br>";
}
return $mimeType;
}
~~~ ... doch leider scheinen die Methoden beide nicht zur Verfügung zu stehen. Die Hotline von 1&1 konnte bzw. wollte mir hier auch nicht weiterhelfen...
Kann mir irgendjemand hier verraten wie ich nun doch noch den MimeType von Dateien auslesen kann?
Ich habe natürlich auch schon versucht das Script als PHP5 laufen zu lassen mit "AddType x-mapp-php5 .php" und "AddHandler x-mapp-php5 .php"...
Besten Dank und noch einen schönen Abend!
Tom