2010-11-27 2 views
0

Ich habe Datei-Uploader (verwendet PHP) in meiner Anwendung verwendet.Dateityp gibt Null in Chrom-Browser

In FireFox, und Internet Explorer8 funktioniert, wenn ich unten Anweisung versuchen.

print $_FILES['upladed']['type']; 

Aber in Chrom bekomme ich null Wert (nichts zu drucken).

Wenn ich var_dump($_FILES['upladed']['type']); verwenden dann bin ich als Ergebnis

string '' (length=0) 

bekommen vorschlagen Bitte einige Hinweise.

Dank

-Pravin

+0

PHP hat nichts drucken, wenn es einen NULL-Wert begegnet. Was ist die genaue Ausgabe? Irgendwelche Fehler? – BoltClock

+0

Es wird nichts gedruckt .. und ich bekomme auch keinen Fehler. – pravin

+0

Was möchten Sie eigentlich drucken? – Shoe

Antwort

2

Zunächst einmal verwenden var_dump($_FILES['upladed']['type']) wenn es wirklich NULL ist, um herauszufinden, oder nicht.

Zweitens, ich weiß nicht, was ist los mit Chrome, aber Sie sollten nicht auf diesen Wert in Ihrer PHP-Anwendung verlassen. Überprüfe immer die Daten über die Leitung als zu überprüfen, was MIME-Typ der Browser wirklich behauptet, zu sein. In Windows können MIME-Typen beispielsweise in der Registrierung geändert werden.

+0

PHP sollte diesen Wert irgendwann loswerden, denke ich. – timdream

+0

@timdream: danke .... wie bekomme ich den MIME-Typ der hochgeladenen Datei .. – pravin

+0

Wenn ich var_dump ($ _ FILES ['upladed'] ['type']) verwende, bekomme ich die Ergebniszeichenfolge '' (length = 0) – pravin

1

Chrome (bis mindestens 8.0.552.215) hat Probleme mit Inhaltstypen von Dateien. Für mich war es, wenn die Datei keine Erweiterung hatte.

See: http://code.google.com/p/chromium/issues/detail?id=6800

Hinweis: Ich bin mit Streben 2.0.14 mit dem FileUploadInterceptor (verwendet ServletFileUpload und JakataMultipartRequest)