(PHP 4 >= 4.0.3, PHP 5, PHP 7)
is_uploaded_file — Indique si le fichier a été téléchargé par HTTP POST
$filename
)
Retourne TRUE
si le fichier filename
a été téléchargé
par HTTP POST. Cela est très utile pour vous assurer qu'un utilisateur n'essaie
pas d'accéder intentionnellement à un fichier auquel il n'a pas droit
(comme /etc/passwd).
Ce type de vérification est spécialement important s'il est possible que les fichiers téléchargés révèlent leur contenu à l'utilisateur, ou même aux utilisateurs du même système.
Pour un fonctionnement correct, la fonction is_uploaded_file() nécessite un argument comme $_FILES['userfile']['tmp_name'], - le nom du fichier téléchargé sur la machine cliente $_FILES['userfile']['name'] ne fonctionne pas.
filename
Le nom de fichier à vérifier.
Cette fonction retourne TRUE
en cas de
succès ou FALSE
si une erreur survient.
Exemple #1 Exemple avec is_uploaded_file()
<?php
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
echo "File ". $_FILES['userfile']['name'] ." téléchargé avec succès.\n";
echo "Affichage du contenu\n";
readfile($_FILES['userfile']['tmp_name']);
} else {
echo "Attaque possible par téléchargement de fichier : ";
echo "Nom du fichier : '". $_FILES['userfile']['tmp_name'] . "'.";
}
?>