Formulaire upload erreur en cas d'échec

newo60 -  
Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   -
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
A voir également:

1 réponse

Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
 
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