array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'tr', ), 'this' => array ( 0 => 'function.is-uploaded-file.php', 1 => 'is_uploaded_file', ), 'up' => array ( 0 => 'ref.filesystem.php', 1 => 'Dosya Sistemi İşlevleri', ), 'prev' => array ( 0 => 'function.is-readable.php', 1 => 'is_readable', ), 'next' => array ( 0 => 'function.is-writable.php', 1 => 'is_writable', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'tr', 'path' => 'reference/filesystem/functions/is-uploaded-file.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4 >= 4.0.3, PHP 5, PHP 7, PHP 8)
is_uploaded_file — Bir dosya HTTP POST üzerinden karşıya yüklenebilecekse bunu söyler
dosyaismi
ile belirtilen dosya HTTP POST üzerinden
karşıya yüklenebiliyorsa true
döndürür. Yetkisiz kullanıcıların
/etc/passwd gibi üzerinde işlem yapmalarının yasak
olduğu dosyaları betik üzerinden dışarı göndermelerine engel olmaya
yardımcı olur.
Bir dosyanın karşıya yüklenmesi ile dosya içeriğinin kullanıcıya veya aynı sistem üzerindeki diğer kullanıcılara ifşa edilmesini sağlayacak şeyleri yapma şansı doğacaksa bu sınamalar oldukça önem kazanır.
İşlemin gerektiği gibi yapılabilmesi için is_uploaded_file() işlevi $_FILES['userfile']['tmp_name'] gibi bir bağımsız değişkene ihtiyaç duyar - istemcilerin makinesinde karşıya yüklenen dosyanın ismi $_FILES['userfile']['name'] çalışmaz.
dosyaismi
Sınanacak dosyanın ismi.
Örnek 1 - is_uploaded_file() örneği
<?php
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
echo $_FILES['userfile']['name'] ." dosyası başarıyla karşıya yüklendi.\n";
echo "Dosya içeriği:\n";
readfile($_FILES['userfile']['tmp_name']);
} else {
echo "Saldırısı olasılığı: ";
echo "'". $_FILES['userfile']['tmp_name'] . "' ";
echo "dosyası karşıya yüklenmek isteniyor.";
}
?>