画像ファイルをアップロードしようとしています。
私はファイル名とOKを受け取り、エラーはありませんが、何らかの理由でファイルタイプif/elseステートメントに到達すると次のようになります。
if($filetype != 'image/jpeg' || $filetype != 'image/jpg' || $filetype != 'image/png' || $filetype != 'image/gif') {
//ERROR - NOT CORRECT TYPE
}
else {
//CORRECT FILE TYPE..CONTINUE
}
常にファイルタイプが間違っていると表示されます。さまざまなサイズのいくつかの異なるファイルタイプを試してみましたが、役に立ちませんでした。
私の完全なコードは次のとおりです。
if(!$_FILES['photo'.$i]['error'])
{
echo "<br />NO ERRORS FOUND";
//FILE TYPE CHECKER
$filetype = $_FILES['photo'.$i]['type'];
echo "<br />FILE TYPE: " . $filetype;
if($filetype != 'image/jpeg' || $filetype != 'image/jpg' || $filetype != 'image/png' || $filetype != 'image/gif') {
$valid_file = false;
$message = 'Wrong file type. Please only upload jpg, jpeg, gif or png files';
}//END FILE CHECKER IF
else {
echo "<br />FILE TYPE OK";
}//END FILE TYPE CHECK ELSE
}
この行echo "<br />FILE TYPE: " . $filetype;
は、正しいファイルタイプ(例:FILE TYPE:image / png)をアップロードしていることを示していますが、ifステートメントが反応しません...
なぜこれが起こっているのか誰かが知っていますか?