Tom: Uploadscript Probleme mit MIME-Typen

Beitrag lesen

Hello,

Sind nun meine MIME-Typ Angaben falsch? Ist es vom Browser abhaengig, oder warum funktioniert es bei meinem Bruder weder im IE noch im FF?

Browser können lügen.
Und das scheint hier der Fall zu sein.

_Überprüfe_ lieber den Dateityp, anstatt ihn zu glauben.

Je nach Installationseinstellungen hat PHP eine fertige Funktion dafür

mime_content_type() http://de2.php.net/manual/de/function.mime-content-type.php

oder auch nicht.
Wenn Du dann ein entsprechend eingerichtetes Linux hast, kanns Du die Funktion noch selber bauen:

if(!function_exists('mime_content_type'))
{
  function mime_content_type($filename)
  {
    $filepath = realpath($filename);
    $_mime = array();

// Spaces werden maskiert, weil sie sonst trennen
    $filepath = str_replace(" ","\ ",$filepath);

exec ("file -bi $filepath", $_mime, $error);

if (($error) or (count($_mime) != 1)) return false;

if (strpos($_mime[0], "can't stat") !== false)
    {
      $mime = "Typ unbekannt";
    }
    elseif (strpos($_mime[0], "can't read") !== false)
    {
      $mime = "Datei nicht lesbar";
    }
    elseif (strpos($_mime[0], "can't ") !== false)
    {
      $mime = "unbekannter Fehler";
    }
    else
    {
      $mime = trim($_mime[0]);
    }

return $mime;
  }
}

Mit Hilfe dieser Funktion kannst Du den MIME-Type dann auf dem Server kontrollieren.

Harzliche Grüße aus http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau