Titre: Vérification pour upload d'image
Posté par: Bluely le le 04-01-2011 a 22:34:15
Salut à tous,
Pouvez-vous svp me trouver la solution pour faire la vérification de la taille de l'image à uploader? J'ai défini deux variables pour faire la comparaison de la taille du fichier qu'on uploade et la taille maxi autorisée, mais j'avoue que je ne sais pas trop où placer la condition dans mon code. Vos aides me seront très utiles. Merci d'avance
Code:
<?php
require_once "../connexion.php";
$erreur="";
if(isset($_POST['envoi'])) { if(!empty($_FILES['image_grande']['name'])){ $photo =$_FILES['image_grande']['name']; $temp_photo=$_FILES['image_grande']['tmp_name']; $taille_maxi = 1000000; $taille = filesize($_FILES['image_grande']['tmp_name']); $chemin_photo= "../photos/"; $chemin_vignette = "../photos/vignettes"; $extension = strtolower(substr($photo, -3));//récupération des 3 dernières lettres de l'extension en minuscule $allow_extension = array('jpg', 'gif', 'jpeg', 'png'); if(in_array($extension, $allow_extension)){ //vérifie si c'est la bonne extension move_uploaded_file($temp_photo, $chemin_photo.$photo); $requete ="INSERT INTO galerie VALUES ('','$photo') "; mysql_query($requete); //pour envoyer sa requete à mysql header('Location: gestionPhotos.php'); }else{ $erreur= "<br /><br />Votre fichier n'est pas une image."; } } else{ $erreur= "<br /><br />Merci de télécharger une image."; }
}
?>
|
|
|
Titre: Re:Vérification pour upload d'image
Posté par: Ether Création le le 05-01-2011 a 14:31:07
Bonjour,
Personnellement voilà ce que je la mettrait après le test d'extension et avant l'ulpoad de l'image :)
Arthur
|
Titre: Re:Vérification pour upload d'image
Posté par: Bluely le le 05-01-2011 a 20:57:23
Je sais bien mais merci quand même :) En fait j'ai trouvé un truc possible. Merci |
Titre: Re:Vérification pour upload d'image
Posté par: Lilian le le 05-01-2011 a 23:37:32
| Déjà ... juste comme ça :) il faut éviter les require_once ... ça n'a pas réellement de rapport avec le sujet principal mais je profite de visualiser le code pour donner ce conseil :) |
Titre: Re:Vérification pour upload d'image
Posté par: Bluely le le 06-01-2011 a 00:19:11
ok c'est noté merci. Je reviens avec mon code, qui est un peu plus développé. Cependant un autre problème se pose au sujet de la taille de l'image. J'ai mis la taille maxi à 1Mo .J'ai essayé avec une image de 1,88Mo et ça m'affichait le message derreur et n'uplodait pas. Donc résultat OK. Sauf que je n'ai plus le message d'erreur pour des images plus lourdes : j'arrive à uploder des images de 2-3 Mo. Je trouve ça vraiment bizarre. Quelqu'un pourrait m'éclairer? Merci
Code:
<?php require "../liaison.php";
$erreur=""; if(isset($_POST['envoi'])) { if(!empty($_FILES['image_grande']['name'])){ require("imgClass.php"); $photo =$_FILES['image_grande']['name']; $temp_photo=$_FILES['image_grande']['tmp_name']; $taille_maxi = 1000000;//1Mo $taille = $_FILES['image_grande']['size']; $chemin_photo= "../photos/"; $chemin_vignette = "../photos/vignettes"; $extension = strtolower(substr($photo, -3));//récupération des 3 dernièeres lettres de l'extension en minuscule $allow_extension = array('jpg', 'gif', 'jpeg', 'png'); if(in_array($extension, $allow_extension)){//vérifie si c'est la bonne extension if ($taille <= $taille_maxi){ move_uploaded_file($temp_photo, $chemin_photo.$photo); Img::creerMin($chemin_photo.$photo,$chemin_vignette,$photo,175,150 ); //class permetttant de redimensionner $requete ="INSERT INTO galerie VALUES ('','$photo') "; mysql_query($requete); //pour envoyer sa requete à mysql header('Location: gestionGalerie.php'); } else {$erreur= "<br /><br />Votre fichier est trop volumineux";} }else{ $erreur= "<br /><br />Votre fichier n'est pas une image"; } } else{ $erreur= "<br /><br />Merci de télécharger une image."; }
}
?>
|
|
|
Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.
|