Formulaire upload erreur en cas d'échec

Fermé
newo60 - 30 déc. 2013 à 17:32
Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 - 31 déc. 2013 à 11:20
Bonjour,

Dans mon formulaire d'upload j'aimerais retourner une erreur si php n'arrive pas a recréer une image a partir de l'original mais je ne sais pas comment m'y prendre donc je viens demander votre aide. Ce que je voudrais c'est qu' une fois que l'image que l'utilisateur a posté est passé toute les vérifications de base j'aimerais déclencher une ultime erreur si la création de la miniature et/ou la création de la nouvelle image échoue (pour n'importe qu'elle raison). voici le code.


if(!empty($_FILES))

{
$ok = true;
//vérification de base 


//si les vérifications de base son ok création de miniature + nouvelle image a partir de l'original
	    if($ok){

if($extensions == 'jpg' || $extensions == 'jpeg') {$im = imagecreatefromjpeg($file['tmp_name']);}
		if($extensions == 'png') {$im = imagecreatefrompng($file['tmp_name']);}
		
		// création de la miniature
		$ox = imagesx($im); //largeur
		$oy = imagesy($im);//hauteur
		$nx = 300;
		$ny = floor($oy *($nx/$ox));
		$nm = imagecreatetruecolor($nx,$ny);
		imagecopyresized($nm, $im, 0,0,0,0, $nx,$ny,$ox,$oy);
		
		//création d'une nouvelle image a partir de l'originale + redimensionnement si trop grosse
		$largeur = imagesx($im); //largeur
		$hauteur = imagesy($im);//hauteur
		if($largeur >= 2048){
		$nouvelle_largeur = 2048;
		$nouvelle_hauteur = floor($hauteur *($nouvelle_largeur/$largeur));
		}elseif ($hauteur >= 2048){
		$nouvelle_hauteur = 2048;
		$nouvelle_largeur = floor($largeur *($nouvelle_hauteur/$hauteur));
		}elseif ($hauteur < 2048){
		$nouvelle_hauteur = $hauteur;
		$nouvelle_largeur = floor($largeur *($nouvelle_hauteur/$hauteur));
		}
		$nmr = imagecreatetruecolor($nouvelle_largeur,$nouvelle_hauteur);
                imagecopyresized($nmr, $im, 0,0,0,0, $nouvelle_largeur,$nouvelle_hauteur,$largeur,$hauteur);
		
		
		imagedestroy($im); // destruction de l'image original
		imagejpeg($nm, $dossier_min.$newname.'.'.$extensions);// envois de la miniature dans le dossier min
		imagejpeg($nmr, $dossier_image.$newname.'.'.$extensions);// envois de la nouvelle image dans le dossier image 


// insertion dans la bdd  (fin du code)
}}



merci pour votre aide

1 réponse

Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
31 déc. 2013 à 11:20
Bonjour,
imagejpeg revoie TRUE si tout se passe bien ou FALSE si une erreur surviens, tu peut donc t'en servir pour afficher une erreur via un petit IF.
0