さて、これに対する良い答えが見つかりません。ファイルが実際にphpでファイルアップロードhtmlフォームに入れられているかどうかを確認するにはどうすればよいですか?
やっている
if (isset($_FILES['new_image']))
設定されていることを常に返すので、それは良くありません。何か案が?
必要なのは以下のコードだけです。
if(isset($_FILES['new_image'])) {
// code to execute
}
あるいは、
if(isset($_FILES['new_image']) && $_FILES['new_image']['size'] > 0) {
// code to execute
}
...そしてフォームタグには少なくとも
<form enctype="multipart/form-data">
</form>
おそらく && $_FILES['new_image']['name'] != '' を追加できます
PHP では、GD のimagecreatefromstringを使用して、文字列が画像かどうかを確認できます。
この関数はfalse
、画像がサポートされていない場合に返されるため、画像が有効かどうかも確認できます。