すべて、 アップロード時に追加することを可能にします潜在的に危険な可能性があることをご承知のように、ファイルが.jpg、.jpeg、.gif、または上書きの.pngのみであることを確認する方法はありますか?どんな助けでも大歓迎です!は、特定のファイルのみタイプが私は私のWordpressのブログにいくつかの画像をアップロードするには、次のコードを使用してい
ありがとうございます!
すべて、 アップロード時に追加することを可能にします潜在的に危険な可能性があることをご承知のように、ファイルが.jpg、.jpeg、.gif、または上書きの.pngのみであることを確認する方法はありますか?どんな助けでも大歓迎です!は、特定のファイルのみタイプが私は私のWordpressのブログにいくつかの画像をアップロードするには、次のコードを使用してい
ありがとうございます!
許容されるMIMEタイプのオーバーライドで配列を設定します。ここにgif/jpgの例があります
$fieldname = 'logo';
include_once(ABSPATH . 'wp-admin/includes/media.php');
include_once(ABSPATH . 'wp-admin/includes/file.php');
if ($_FILES[$fieldname]) {
$allowed_file_types = array('jpg' =>'image/jpg','jpeg' =>'image/jpeg', 'gif' => 'image/gif', 'png' => 'image/png');
$overrides = array('test_form' => false, 'mimes' => $allowed_file_types);
$file = wp_handle_upload($_FILES[$fieldname], $overrides);
echo $file[error];
}
あなたは、このようなファイルの拡張子を確認できます。
// check for extension !
$name = $_FILES['foto']['name'];
$ext = explode(".",$name);
$ext = array_reverse($ext);
$ext = strtolower($ext[0]);
$valid = 0;
$error = false;
if (!empty($_GET['exts'])) {
if ($_GET['exts'] == 'all') {
$valid=1;
} else {
if (strpos($_GET['exts'],$ext) !== false) $valid=1;
else $valid=0;
}
} else {
if (strpos($defexts,$ext) !== false) $valid=1;
else $valid=0;
}
をまた代わりに、「名前」の値が「タイプ」である、ファイルのMIMEタイプを確認することができます。 http://www.php.net/manual/en/reserved.variables.files.php
ありがとう、これは私が探していたものです。それは許可されていないと言って画像をアップロードしようとするとエラーになります。どのように私はそれがチェックしている値を見ることができます上の任意のアイデア? – user1048676
編集:$ allowed_file_types配列が変更されました。 –