Bonjour à tous,
Voila mon problème, qui n'est pas dramatique mais qui doit surement pouvoir être résolu.
J'ai un champ de type file qui, lorsqu'on clic dessus, ouvre une popup permettant d'aller récupérer un fichier dans un répertoire en local et de l'ajouter sur le serveur.
La valeur upload_max_filesize du serveur en question est de 3Mo.
Lorsqu'une personne souhaite uploader un fichier, on gère les erreurs. Si le fichier est vide, on affiche une alerte javascript. Si le fichier n'est pas un pdf, on affiche une alerte javascript ...
Le problème est le suivant. Si une personne tente d'uploader un fichier de plus de 3Mo, l'erreur levé correspond à : le fichier est vide.
J'ai donc regardé chaque attribut récupérer concernant le fichier et seul le nom est bien récupéré. Le type, la taille, ... ne sont pas récupérés.
Donc voila je voulais savoir s'il y avait un moyen de savoir si le fichier est vraiment vide ou si sa taille est supérieure à 3Mo pour pouvoir afficher le bon message d'erreur.
Voici juste le bout de code concernant les erreurs :
Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 if ($_FILES['userfile']['name'] == "") { ?> <script> alert("Vous devez préciser un fichier à importer."); </script> <? } else if ($_FILES['userfile']['size']== 0) { ?> <script> alert("Votre fichier est vide."); </script> <? } else if ($_FILES['userfile']['size'] > $_GET['size']) { ?> <script> alert("Pour des raisons de sécurité votre fichier doit être inférieure à <?php echo doubleval(intval($_GET['size'])/1024); ?> Ko."); </script> <? }
Partager