Prüfung des Dateityps mit verschiedenen Browsern

cyphernnc

Grünschnabel
Hallo Forum,

ich hoffe, dass ich meine Frage im richtigen Bereich stelle.
In meinem Forum habe ich ein Script eingebaut, was es den Usern ermöglicht, eine FLV-Datei hoch zu laden und einen Code einzufügen, der das Video in einem Player anzeigt.

Mein Problem ist, dass das im Internet Explorer funktioniert, mit Firefox und Iron kommt aber eine Fehlermeldung, dass diese Datei nicht erlaubt ist.
Es hängt also irgendwie an der Prüfung des Dateiformates und das hängt mit den Browsern zusammen.

Im Code steht:
PHP:
//Deklaration der gültigen Mime-Typen
$ea_up_ma_flv_mimearray    = array("application/octet-stream","video/x-flv","video/flv");

Nun habe ich schon mit dem Autor des Scriptes geschrieben, er sagt es liegt an den MIME-Standards, die Lösungsvorschläge waren diese:

PHP:
//Deklaration der gültigen Mime-Typen
$ea_up_ma_flv_mimearray    = array("flv-application/octet-stream","application/octet-stream","application/x-flash-video","video/x-flv","video/mp4");

und

PHP:
//Deklaration der gültigen Mime-Typen
$ea_up_ma_flv_mimearray    = array("video/flv","video/x-flv","flv-application/octet-stream","application/octet-stream");

Leider bringen die zwei Vorschläge keinen Erfolg, es ist weiterhin so, dass es mit dem Internet Explorer funktioniert, mit Firefox und Iron aber leider nicht.

Habt ihr eine Idee? Würde mich über eure Hilfe sehr freuen.

LG cyper
 

deepthroat

Erfahrenes Mitglied
Hi.

FF 4 RC sendet bei mir "application/octet_stream" (also Unterstrich, kein Bindestrich).

Iron (Google Chrome Derivat) sendet "application/octet-stream". Das sollte also funktionieren.

Testen kannst du das ganze mit einem kleinen Testscript:
PHP:
<html>
<head><title>Test Upload MIME Type</title><head>
<body>
<?php
 if (isset($_FILES)) {
   echo "<div>type: " . $_FILES['uploaded']['type'] . "</div>";
 }
  ?>
<div>
<form enctype="multipart/form-data" action="upload.php" method="POST">
 Please choose a file: <input name="uploaded" type="file" /><br />
 <input type="submit" value="Upload" />
 </form>
</div>
</body>
</html>
Lade das Skript auf deinen Server und nenne es "upload.php".

Gruß