Bonjour, j'ai récemment mis en place un bout de code pour uploader des fichiers sur mon site internet. N'ayant jamais fait ca, j'ai tout pompé sur internet. Mon uploade fonctionne bien mais je me demandais si je ne pouvais pas simplifier mon code. Dans mon formulaire, j'utilise MAX-FILE-SIZE pour vérifier la taille de mon fichier avant d'aller plus loin. Et à la fin de mon scipt, je regarde de nouveau si mon fichier est moins lourd que ma variable $maxsize. Est-ce nécessaire??? Pourquoi vérifier avant et après, y a des risques que le fichier prenne du poids dans le transfert du dossier temporaire au dossier final (injections ou autre)????
Merci pour vos réponses!!!
Voici mon formulaire d'upload :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <form action="ecole.php" method="post" enctype="multipart/form-data"> ....... <input type="hidden" name="MAX_FILE_SIZE" value="1000000"> ...... </form>
Voici le php associé :
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 //On vérifie que le formulaire est envoié if (isset($_POST['submit'])){ // On vérifie que le champ n'est pas vide. if (!empty($_FILES['planning'])){ // On récupère les informations qui nous intéressent. //nom réel de l'image $plan = $_FILES['planning']['name']; //poids de l'image en octets $size = $_FILES['planning']['size']; //nom temporaire de l'image (sur le serveur) $tmp = $_FILES['planning']['tmp_name']; //type de l'image $type = $_FILES['planning']['type']; // Code de l'erreur s'il y en a une. $erreur = $_FILES['planning']['error']; $maxsize=1000000; // On vérifie la présence de l'image dans le dossier temporaire. if (is_uploaded_file($tmp)){ // Vérification du type de l'image. if ($type=="image/jpg" || $type=="image/png" || $type=="image/jpeg"){ // Vérification de la taille de l'image. if ($size < $maxsize){ //on déplace l'image dans le répertoire final .............
Partager