2010-11-27 2 views
0

私のアプリケーションでファイルアップローダー(PHPを使用)を使用しました。ファイルタイプがクロムブラウザでnullを返す

FireFoxでは、以下の文を試してみるとInternet Explorer8が動作します。

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

しかし、クロームでは、(何も印刷しない)null値を取得しています。

私はその後、私は

string '' (length=0) 

として結果を取得していますvar_dump($_FILES['upladed']['type']);を使用している場合はいくつかのポインタを提案してください。

おかげで、すべての

+0

と支柱2.0.14を使用しています。正確な出力は何ですか?エラーはありますか? – BoltClock

+0

それは何も印刷されていません。また、私は何の誤りもありません。 – pravin

+0

実際に何を印刷しようとしていますか? – Shoe

答えて

2

まず-Pravin

、それは本当にNULLだかどう把握するvar_dump($_FILES['upladed']['type'])使用。

第2に、私はChromeに何が問題なのか分かりませんが、PHPアプリケーションではこの値に頼るべきではありません。ブラウザ上の実際のMIMEタイプを確認するよりも、常にとなっていることを確認するよりも、ワイヤでデータを検証する必要があります。 Windowsでは、MIMEタイプはレジストリなどで変更できます。

+0

PHPはこの値を取り除かなければなりません。 – timdream

+0

@timdream:ありがとう....アップロードされたファイルのMIMEタイプを取得する方法 – pravin

+0

var_dump($ _ FILES ['upladed'] ['type'])を使用した場合、結果文字列 ''(length = 0 ) – pravin

1

Chrome(少なくとも8.0.552.215まで)には、コンテンツタイプのファイルに問題があります。私にとっては、ファイルに拡張子がない場合でした。

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

注:私はそれがNULL値に遭遇した場合、PHPは何も印刷されませんFileUploadInterceptor(ServletFileUploadとJakataMultipartRequestを使用しています)