私の比較表に対応する PHP ファイルのアップロード タイプのサフィックス_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:48:58
オリジナル
1193 人が閲覧しました

PHP でファイルや写真をアップロードする場合、アップロードされるファイルの種類を制限する必要があります。サフィックス名のみを制限すると、それを回避するのは簡単です。以下に、鉱山の比較表に対応するいくつかのサフィックス名を示します。 . 皆様のお役に立てれば幸いです。

PHP スクリプトを使用してファイルをアップロードする場合は、ファイル形式を PHP で認識されるファイル形式に加工する必要があります (たとえば、.jpg のファイル形式は image/jpeg)。この形式の判断は、まずブラウザによって行われ、フォームの送信を通じてそれが特定の種類のファイルであると判断され、それが処理のために PHP に送信されます。

ブラウザーごとにファイルタイプの定義が異なる場合があるため、ブラウザーごとに判断する必要がある場合があります。実際、さまざまなブラウザの種類を判定に追加できます。

以下は、IE と Firefox のファイルタイプの比較表です:

いえ Firefox
ID サフィックス phpで認識されるファイルタイプ
0 gif 画像/GIF
1 jpg 画像/jpeg
2 png 画像/png
3 bmp 画像/bmp
4 PSD アプリケーション/オクテットストリーム
5 イコ 画像/xアイコン
6 rar アプリケーション/オクテットストリーム
7 ジップ アプリケーション/zip
8 7z アプリケーション/オクテットストリーム
9 実行 アプリケーション/オクテットストリーム
10 ナビ ビデオ/avi
11 rmvb application/vnd.rn-realmedia-vbr
12 3GP アプリケーション/オクテットストリーム
13 flv アプリケーション/オクテットストリーム
14 mp3 オーディオ/mpeg
15 wav オーディオ/wav
16 krc アプリケーション/オクテットストリーム
17 lrc アプリケーション/オクテットストリーム
18 txt テキスト/プレーン
19 ドクター アプリケーション/msword
20 XLS アプリケーション/vnd.ms-excel
21 ppt アプリケーション/vnd.ms-powerpoint
22 pdf 申請書/pdf
23 ちむ アプリケーション/オクテットストリーム
24 mdb アプリケーション/msaccess
25 SQL アプリケーション/オクテットストリーム
26 コン アプリケーション/オクテットストリーム
27 ログ テキスト/プレーン
28 アプリケーション/オクテットストリーム
29 イニ アプリケーション/オクテットストリーム
30 php アプリケーション/オクテットストリーム
31 html テキスト/html
32 htm テキスト/html
33 ttf アプリケーション/オクテットストリーム
34 フォン アプリケーション/オクテットストリーム
35 js アプリケーション/x-javascript
36 xml テキスト/xml
37 dll アプリケーション/オクテットストリーム
38 dll アプリケーション/オクテットストリーム
ID サフィックス phpで認識されるファイルタイプ
0 gif 画像/GIF
1 jpg 画像/pjpeg
2 png 画像/x-png
3 bmp 画像/bmp
4 PSD アプリケーション/オクテットストリーム
5 イコ 画像/xアイコン
6 rar アプリケーション/オクテットストリーム
7 ジップ application/x-zip-compressed
8 7z アプリケーション/オクテットストリーム
9 実行 アプリケーション/オクテットストリーム
10 ナビ ビデオ/avi
11 rmvb application/vnd.rn-realmedia-vbr
12 3GP アプリケーション/オクテットストリーム
13 flv アプリケーション/オクテットストリーム
14 mp3 オーディオ/mpeg
15 wav オーディオ/wav
16 krc アプリケーション/オクテットストリーム
17 lrc アプリケーション/オクテットストリーム
18 txt テキスト/プレーン
19 ドクター アプリケーション/msword
20 XLS アプリケーション/vnd.ms-excel
21 ppt アプリケーション/vnd.ms-powerpoint
22 pdf 申請書/pdf
23 ちむ アプリケーション/オクテットストリーム
24 mdb アプリケーション/msaccess
25 SQL テキスト/プレーン
26 コン アプリケーション/オクテットストリーム
27 ログ テキスト/プレーン
28 テキスト/プレーン
29 イニ アプリケーション/オクテットストリーム
30 php アプリケーション/オクテットストリーム
31 html テキスト/html
32 htm テキスト/html
33 ttf アプリケーション/オクテットストリーム
34 フォン アプリケーション/オクテットストリーム
35 js テキスト/html
36 xml テキスト/xml
37 dll アプリケーション/オクテットストリーム
38 クラス アプリケーション/Java

次に例を見てください

代码如下 复制幣

$temppath=$upfile['tmp_name'];
   $fileinfo=pathinfo($upfile['name']);
   $extension=$upfile['type'];
   //エコー $extension;
   //終了;
   スイッチ( $extension )
   {
    ケース「アプリケーション/msword」:
    $extension ='doc';
    休憩;
    ケース 'application/vnd.ms-excel':
    $extension ='xls';
    休憩;
    case 'application/vnd.openxmlformats-officedocument.wordprocessingml.document':
    $extension ='docx';
    休憩;
    ケース 'application/vnd.ms-powerpoint':
    $extension ='ppt';
    休憩;
    ケース「アプリケーション/pdf」:
    $extension ='pdf';
    休憩;
    case 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet':
    $extension ='xlsx';
    休憩;
    デフォルト:
    die('只允许上传doc,docx,xls,pdf,ppt文件 重新上传');
   
   }

上の例では、doc、docx、xls、pdf、ppt のみを上方に転送できるように制限されており、php や asp ファイルなどの利用を意図した場合に上方に転送するファイルが違法であることが示されます。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632741.html技術記事 php でファイルや写真をアップロードする場合、アップロードするファイルの種類を制限する必要があります。サフィックス名のみを制限すると、それを簡単に回避できます。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!