私は、画像を投稿するためにPHPで作成した画像アップロードプログラムの設定をしています。ファイルが実際に画像であることを確認する方法を見つけるのが難しいです。私はファイルの種類をチェックしていますが、他のチェックの中でもgetimagesize()を使っていますが、テキストファイルの名前をJPGファイルに変更すると、ファイルの検証によってファイルが許可されます。これが実際に画像であることをどうすれば保証できますか?私は上司に感染ファイルを実行させたくありません。PHPによる画像アップロードの検証
1
A
答えて
0
チェックが許可拡張子が
の.gif .jpgのJPEG形式の.pngあなたはImagickのidentifyImage()コマンドを使用することができます
0
許可する必要があります。
エラーが返ってきた場合や、画像データがない場合は、画像ではなく画像データを返します。このツールのコマンドラインバージョンがあります:http://www.imagemagick.org/script/identify.php imagemagickでPHPをコンパイルしていない場合
0
Exifモジュールのexit-imagetype()関数の使い方はどうですか?
http://www.php.net/manual/en/function.exif-imagetype.php
<?php
if (exif_imagetype('image.gif') != IMAGETYPE_GIF) {
echo 'The picture is not a gif';
}
?>
0
GDを使用して、アップロードした画像を再現します。画像が再生されない場合、画像ではありません!
この関数がfalseを返した場合、有効な画像ではありません。私はJPG、PNGやGIFよりも、それ以上に働いていないので、この関数(BMP?)に収まることができるそこにいくつかのより多くの画像タイプ...
function checkFileType($filetype,$tmp_name)
{
$return_val = false;
switch($filetype){
case 'image/jpg':
case 'image/jpeg':
case 'image/pjpeg':
$return_val = @imagecreatefromjpeg($tmp_name);
break;
case 'image/gif':
$return_val = @imagecreatefromgif($tmp_name);
break;
case 'image/png':
case 'image/x-png':
$return_val = @imagecreatefrompng($tmp_name);
break;
}
return $return_val;
}
+0
簡単な画像確認のためにこれを行いますか? getimagesize()を使用して、ファイルが実際のイメージかどうかを判断してください。あなたが提供したソリューションは、それが何のために遅くて複雑でもあります。 –
関連する問題
- 1. Laravel AJAX画像アップロードの検証
- 2. 画像アップロードphp mysql
- 3. サーバーサイドのフォーム検証PHPアップロード
- 4. PlayFramework 1で画像のアップロードを検証する方法は?
- 5. PHPのjqueryの画像アップロード
- 6. PHPファイルのアップロード(画像)
- 7. アップロード画像PHPの問題
- 8. PHPファイルのアップロードは、画像
- 9. グリッドビューによる画像アップロード
- 10. サーバーに画像をアップロードするPHP Android
- 11. アップロード画像php mysql binary
- 12. アップロードPHPコードは、画像
- 13. PHPサーバーへのHttpURLConnectionによるパラメータと画像のアップロード
- 14. jQuery:アップロードする前に画像の寸法を検証する方法は?
- 15. 複数の画像をアップロードする、PHP
- 16. DjangoとWebtestによる画像のアップロード
- 17. PHP/SQL画像をデータベースにアップロード
- 18. アンドロイドからPHPサーバに画像をアップロード
- 19. PHPでの画像アップロードの概念
- 20. jquery投稿付きのPHP画像アップロード
- 21. 画像のアップロードと削除php sql
- 22. PHPの画像アップロードと権限
- 23. PHP OOP画像のアップロードと操作
- 24. 画像アップロードによる作成ビュー
- 25. アップロードした画像のように見える画像を検索するには
- 26. 画像アップロード画像プレビュー
- 27. PHPとcURLで画像をアップロード
- 28. CodeIgniterの - >画像のアップロードパート3 - >画像検証
- 29. 一度アップロードした画像をPHPでアップロードする
- 30. Railsの画像URLの検証
使用しているgetimagesize(があるかもしれません)次元が有効な配列を返すことを確認してください。ファイルの名前を.txtに変更しても、ファイルの実際のヘッダーは保持されます。ファイル拡張子の単純なチェックは、それが目標であればうまくいくでしょう。 –