この PHP スクリプトを使用して、アップロード中にファイルの拡張子を確認しようとしています。問題は、Chrome では完全に機能することですが、Firefox では拡張子が正しい場合でも常に false を返すため、「無効なファイル」が常にエコーされます。
$allowedExts = array("mp3", "wma", "wav", "ogg", "aac", "aiff", "amr", "ra");
$arr = explode(".", $_FILES["file"]["name"]);
$extension = end($arr);
if ((($_FILES["file"]["type"] == "audio/mp3")
|| ($_FILES["file"]["type"] == "audio/wma")
|| ($_FILES["file"]["type"] == "audio/wav")
|| ($_FILES["file"]["type"] == "audio/ogg")
|| ($_FILES["file"]["type"] == "audio/aac")
|| ($_FILES["file"]["type"] == "audio/aiff")
|| ($_FILES["file"]["type"] == "audio/amr")
|| ($_FILES["file"]["type"] == "audio/ra"))
&& ($_FILES["file"]["size"] < 20000000)
&& in_array($extension, $allowedExts))
{
.
.
.
.
}
else
{
echo "Invalid file";
}
Firefox で動作しない if セクションの問題を誰か教えてください。