Bonjour,
voila je fais actuellement une page d'uploads de photos.
Le problème c'est qu'aucune des vérifications ne fonctionnes !
note : je n'ai aucun message d'erreur! les deux seuls messages que j'ai : Extension correcteTransfert réussi
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39 <?php if(!empty($_POST)){ // Constantes $maxsize = "100000"; // Taille max en octets du fichier $maxwidth = "500"; // Largeur max de l'image en pixels $maxheight = "500"; // Hauteur max de l'image en pixels if ($_FILES['icone']['error'] > 0) $erreur = "Erreur lors du transfert"; if ($_FILES['icone']['size'] > $maxsize) $erreur = "Le fichier est trop gros"; $extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' ); //1. strrchr renvoie l'extension avec le point (« . »). //2. substr(chaine,1) ignore le premier caractère de chaine. //3. strtolower met l'extension en minuscules. $extension_upload = strtolower( substr( strrchr($_FILES['icone']['name'], '.') ,1) ); if ( in_array($extension_upload,$extensions_valides) ) echo "Extension correcte"; $image_sizes = getimagesize($_FILES['icone']['tmp_name']); if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight) $erreur = "Image trop grande"; //Créer un identifiant difficile à deviner $nomcrypt = md5(uniqid(rand(), true)); $nom = "uploads/{$nomcrypt}.{$extension_upload}"; $resultat = move_uploaded_file($_FILES['icone']['tmp_name'],$nom); if ($resultat) echo "Transfert réussi"; } ?> <?php require 'inc/header.php'; ?> <form method="post" action="" enctype="multipart/form-data"> <label for="icone">Photo :</label><br /> <input type="file" name="icone" id="icone" /><br /> <input type="submit" name="submit" value="Envoyer" /> </form>
Partager