IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Redimenssionnement image de plus de 2Mo [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut Redimenssionnement image de plus de 2Mo
    Bonjour,

    j'utilise (l'excellent) redimensionnement d'image fourni par jreaux62, mais j'ai un petit souci de résultat uniquement quand les images sources font plus de 2Mo :

    - la fonction n'est pas activée car les images s'enregistrent bien..mais à leur taille d'origine ! (de plus l'image est totalement noire !)

    - messages d'erreur suivants :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Warning: imagecreatefromjpeg() [function.imagecreatefromjpeg]: gd-jpeg: JPEG library reports unrecoverable error: in redimens.php on line 99
    Warning: imagecreatefromjpeg() [function.imagecreatefromjpeg]: 'upload/130.jpeg' is not a valid JPEG file in redimens.php on line 99
    Warning: imagecopyresampled(): supplied argument is not a valid Image resource in redimens.php on line 123
    Warning: imagedestroy(): supplied argument is not a valid Image resource in redimens.php on line 137
    Votre fichier : ocean.jpg a bien été enregistré !
    redimens.php étant le code [Redimensionnement physique "proportionnel"]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ligne 99 : $Ress_Src = imagecreatefromjpeg($rep_Src.$img_Src);
    ligne 123 : imagecopyresampled($Ress_Dst, $Ress_Src, 0, 0, 0, 0, $W, $H, $W_Src, $H_Src); 
    ligne 137: imagedestroy ($Ress_Src);
    http://j-reaux.developpez.com/tutori...er-image/#LIII


    j'ai dû oublier un truc ? Merci d'avance !

    mes autres codes :

    upload_essai2.php :
    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
    40
    41
    42
    43
    44
    45
     
    <?php
    require ('redimens.php');	// Fonction pour le redimensionnement => jreaux 62 :	http://j-reaux.developpez.com/tutoriel/php/fonctions-redimensionner-image/
    $max_filesize = 100000000;												// Taille max de l'image 2 000 000 octets = 2 Mo !
    $allowed_filetypes = array('.jpg','.jpeg','.gif','.png','.pdf','.JPG','.JPEG','.GIF','.PNG','.PDF');		// Formats autorises
    $filename = $_FILES['userfile']['name'];								// Nom du fichier d'origine et son extension / format
    $ext = substr($filename, strpos($filename,'.'), strlen($filename)-1);	// Extension du fichier
    $nom_fichier = '130.jpeg';				// Nom du fichier cible, ici 130.jpeg pour l'essai ! plus tard :// $date_jour=date('Y_m_d_H_i_s');$nom_fichier = $date_jour .'jpg';
    $upload_path = 'upload/';				// Chemin de l'upload
    if(!in_array($ext,$allowed_filetypes)) 	// Verification du format de fichier
    	{
    		echo '<div class="error">Format de fichier non valide ! <br /> Formats autoris&eacute;s : jpg, png, jpeg, gif, pdf !</div>';
    	}
    if(filesize($_FILES['userfile']['tmp_name']) > $max_filesize)  			// Verification de la taille
    	{
    		echo '<div class="error">La taille du fichier est trop importante ! </div>'.'<input tabindex="11" class="input" type="file" name="userfile" />';
    	}
    if(!is_writable($upload_path)) 											// Verification des droits d'acces
    	{
    		die('<div class="error">Pas de droits d\'acc&eacute;s </div>');	
    	}
     
    if(move_uploaded_file($_FILES['userfile']['tmp_name'],$upload_path . $nom_fichier))	// Transfert du fichier temporaire
    	{
    		// Rappel du fonctionnement : fctredimimage(Largeur,Hauteur,'Repertoire/','nom cible','Repertoire cible/','image source');
     
    		$redimOK = fctredimimage(560,360,'upload/','130.jpeg','upload/','130.jpeg');
    		if ($redimOK == 1) 		// message de succes
    		{
    			echo '<div class="success">'.'Votre fichier : '. $filename .' a bien &eacute;t&eacute; enregistr&eacute; !'.'</div>';
    			echo '<div class="image_fichier">'.'<img src="upload/130.jpeg" width="140px" height="90px" alt="Image" title="Image" /></div>';	// Affichage de l'image
    			echo '</div>';
    			echo '<a href="essai_upload2.php">Retour </a>';
    		}
    		else
    		{
    			echo '<div class="error">Redimensionnement KO ! </div>';
    		}
     
    	}
    else
    	{
    		echo '<div class="error">'.'Echec du transfert !</div>';
    	}
    ?>
    html :
    essai_upload2.php :
    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
    </head>
    <body>
    <div id="mainContent">
    <form method="post" action="upload_essai2.php" enctype="multipart/form-data">
    <fieldset>
    <legend>ESSAI UPLOAD</legend>
    <table CELLSPACING="5" BORDER="0" CELLPADDING="5">
    <tr id="file_holder">
    <td >
    <label> Votre image : </label>
    <input tabindex="11" class="input" type="file" name="userfile" />
    </td>
    </tr>
    <tr>
    <td>
    <input type="submit" value="Envoyer" />
    </td>
    </tr>
    </table>
    </fieldset>
    </form>
    </div>
    </body>
    </html>

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    c'est normal, plus la résolution est grand plus ça prend de RAM, il faut donc que t'acceptes uniquement de plus petites image

  3. #3
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par fazpedro Voir le message
    j'utilise (l'excellent) redimensionnement d'image fourni par jreaux62


    Bonjour,
    je n'ai jamais vu cette erreur avant...
    Si, comme je le pense, tu testes en "local", il faut aussi vérifier la configuration (php.ini).
    - upload_max_filesize est, par défaut, limité à 2Mo.

    Affiche les infos avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo phpinfo(); ?>
    Une alerte plus classique concerne 'memory_limit' ou 'max_execution_time'.
    A mettre en début de fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    // Mise en temps illimité du Time Out
    ini_set('max_execution_time', 0);
    // Augmentation de la taille de la mémoire alloué à php pour le traitement des fichiers.
    ini_set('memory_limit','320M'); // UPLOAD MULTIPLE OU GROS FICHIER
    ?>
    Dernière modification par Invité ; 27/04/2012 à 17h32.

  4. #4
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut
    Bonjour,

    @jreaux62 :

    dans php.ini :
    upload_max_filesize = 16 Mo

    j'ai rajouté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    // Mise en temps illimité du Time Out
    ini_set('max_execution_time', 0);
    // Augmentation de la taille de la mémoire alloué à php pour le traitement des fichiers.
    ini_set('memory_limit','320M'); // UPLOAD MULTIPLE OU GROS FICHIER
    ?>
    mais cela ne change pas à priori :

    Quand je télécharge une image de 5 Mo :
    - pas de message d'erreur
    - l'image est toute noire
    - le redimensionnement physique fonctionne => 3 Ko

    Quand je télécharge une image de 2,05 Mo :
    - pas de message d'erreur ni de succès !
    - l'image n'est pas affichée
    - mais dans le répertoire "/upload" : l'image est bien présente et fait toujours 2,05 Mo !

    je ne comprends pas...j'ai dû louper un épisode ???

    Merci pour l'aide !

  5. #5
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    pas dur a comprendre : 'upload/130.jpeg' is not a valid JPEG
    ton image est corrompu

  6. #6
    Invité
    Invité(e)
    Par défaut
    Hello,
    j'ai juste repris ton code (corrigé), et ca fonctionne très bien, même avec une image de plus de 6Mo.

    essai_upload2.php :
    Code html : 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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
    </head>
    <body>
    <div id="mainContent">
    	<form method="post" action="upload_essai2.php" enctype="multipart/form-data">
    	<fieldset>
    		<legend>ESSAI UPLOAD</legend>
    		<table CELLSPACING="5" BORDER="0" CELLPADDING="5">
    			<tr id="file_holder">
    				<td >
    				<label> Votre image : </label>
    				<input tabindex="11" class="input" type="file" name="userfile" />
    				</td>
    			</tr>
    			<tr>
    				<td><input type="submit" value="Envoyer" /></td>
    			</tr>
    		</table>
    	</fieldset>
    	</form>
    </div>
    </body>
    </html>

    upload_essai2.php :
    Code php : 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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    <?php
    // Mise en temps illimité du Time Out
    ini_set('max_execution_time', 0);
    // Augmentation de la taille de la mémoire alloué à php pour le traitement des fichiers.
    ini_set('memory_limit','320M'); // UPLOAD MULTIPLE OU GROS FICHIER
    ?>
    <?php
    require ('redimens.php');	// Fonction pour le redimensionnement => jreaux 62 :	http://j-reaux.developpez.com/tutoriel/php/fonctions-redimensionner-image/
    $max_filesize = 100000000;												// Taille max de l'image 2 000 000 octets = 2 Mo !
    $allowed_filetypes = array('.jpg','.jpeg','.gif','.png','.pdf','.JPG','.JPEG','.GIF','.PNG','.PDF');		// Formats autorises
    $filename = $_FILES['userfile']['name']; // Nom du fichier d'origine et son extension / format
     
    $ext = substr($filename, strpos($filename,'.'), strlen($filename)-1); // Extension du fichier
    $nom_fichier = date('Y_m_d_H_i_s').$ext; // Nom du fichier cible : date_jour.'jpg';
    $upload_path = 'upload/'; // Chemin de l'upload
     
    if(!in_array($ext,$allowed_filetypes)) 	// Verification du format de fichier
    	{
    		echo '<div class="error">Format de fichier non valide ! <br /> Formats autoris&eacute;s : jpg, png, jpeg, gif, pdf !</div>';
    	}
    if(filesize($_FILES['userfile']['tmp_name']) > $max_filesize)  			// Verification de la taille
    	{
    		echo '<div class="error">La taille du fichier est trop importante ! </div>'.'<input tabindex="11" class="input" type="file" name="userfile" />';
    	}
    if(!is_writable($upload_path)) 											// Verification des droits d'acces
    	{
    		die('<div class="error">Pas de droits d\'acc&eacute;s </div>');	
    	}
     
    if(move_uploaded_file($_FILES['userfile']['tmp_name'],$upload_path . $nom_fichier))	// Transfert du fichier temporaire
    	{
    		// Rappel du fonctionnement : fctredimimage(Largeur,Hauteur,'Repertoire/','nom cible','Repertoire cible/','image source');
     
    		$redimOK = fctredimimage(560, 360, $upload_path, $nom_fichier, $upload_path, $nom_fichier);
    		if ($redimOK == 1) 		// message de succes
    		{
    			echo '<div class="success">'.'Votre fichier : '. $filename .' a bien &eacute;t&eacute; enregistr&eacute; !'.'</div>';
    			echo '<div class="image_fichier">'.'<img src="'.$upload_path.$nom_fichier.'" style="width:140px" alt="Image" title="Image" /></div>';	// Affichage de l'image
    			echo '</div>';
    			echo '<a href="essai_upload2.php">Retour </a>';
    		}
    		else
    		{
    			echo '<div class="error">Redimensionnement KO ! </div>';
    		}
     
    	}
    else
    	{
    		echo '<div class="error">'.'Echec du transfert !</div>';
    	}
    ?>

    redimens.php :
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    <?php
    // 	---------------------------------------------------------------
    // fonction de REDIMENSIONNEMENT physique "PROPORTIONNEL" et Enregistrement
    // 	---------------------------------------------------------------
    // retourne : 1 (vrai) si le redimensionnement et l enregistrement ont bien eu lieu, sinon rien (false)
    // 	---------------------------------------------------------------
    // La FONCTION : fctredimimage ($W_max, $H_max, $rep_Dst, $img_Dst, $rep_Src, $img_Src)
    // Les parametres :
    // - $W_max : LARGEUR maxi finale --> ou 0
    // - $H_max : HAUTEUR maxi finale --> ou 0
    // - $rep_Dst : repertoire de l image de Destination (deprotégé) --> ou '' (meme repertoire)
    // - $img_Dst : NOM de l image de Destination --> ou '' (meme nom que l image Source)
    // - $rep_Src : repertoire de l image Source (deprotégé)
    // - $img_Src : NOM de l image Source
    // 	---------------------------------------------------------------
    // 3 options :
    // A- si $W_max != 0 et $H_max != 0 : a LARGEUR maxi ET HAUTEUR maxi fixes
    // B- si $H_max != 0 et $W_max == 0 : image finale a HAUTEUR maxi fixe (largeur auto)
    // C- si $W_max == 0 et $H_max != 0 : image finale a LARGEUR maxi fixe (hauteur auto)
    // Si l'image Source est plus petite que les dimensions indiquees : PAS de redimensionnement.
    // 	---------------------------------------------------------------
    // $rep_Dst : il faut s'assurer que les droits en écriture ont été donnés au dossier (chmod)
    // - si $rep_Dst = ''   : $rep_Dst = $rep_Src (meme repertoire que l image Source)
    // - si $img_Dst = '' : $img_Dst = $img_Src (meme nom que l image Source)
    // - si $rep_Dst='' ET $img_Dst='' : on ecrase (remplace) l image source !
    // 	---------------------------------------------------------------
    // NB : $img_Dst et $img_Src doivent avoir la meme extension (meme type mime) !
    // Extensions acceptees (traitees ici) : .jpg , .jpeg , .png
    // Pour ajouter d autres extensions : voir la bibliotheque GD ou ImageMagick
    // (GD) NE fonctionne PAS avec les GIF ANIMES ou a fond transparent !
    // 	---------------------------------------------------------------
    // UTILISATION (exemple) :
    // $redimOK = fctredimimage(120,80,'reppicto/','monpicto.jpg','repimage/','monimage.jpg');
    // if ($redimOK == 1) { echo 'Redimensionnement OK !';  }
    // 	---------------------------------------------------------------
    function fctredimimage($W_max, $H_max, $rep_Dst, $img_Dst, $rep_Src, $img_Src) {
     // ------------------------------------------------------------------
     $condition = 0;
     // Si certains parametres ont pour valeur '' :
       if ($rep_Dst == '') { $rep_Dst = $rep_Src; } // (meme repertoire)
       if ($img_Dst == '') { $img_Dst = $img_Src; } // (meme nom)
     // ------------------------------------------------------------------
     // si le fichier existe dans le répertoire, on continue...
     if (file_exists($rep_Src.$img_Src) && ($W_max!=0 || $H_max!=0)) { 
       // ----------------------------------------------------------------
       // extensions acceptees : 
       $ExtfichierOK = '" jpg jpeg png"'; // (l espace avant jpg est important)
       // extension fichier Source
       $tabimage = explode('.',$img_Src);
       $extension = $tabimage[sizeof($tabimage)-1]; // dernier element
       $extension = strtolower($extension); // on met en minuscule
       // ----------------------------------------------------------------
       // extension OK ? on continue ...
       if (strpos($ExtfichierOK,$extension) != '') {
          // -------------------------------------------------------------
          // recuperation des dimensions de l image Src
          $img_size = getimagesize($rep_Src.$img_Src);
          $W_Src = $img_size[0]; // largeur
          $H_Src = $img_size[1]; // hauteur
          // -------------------------------------------------------------
          // condition de redimensionnement et dimensions de l image finale
          // -------------------------------------------------------------
          // A- LARGEUR ET HAUTEUR maxi fixes
          if ($W_max != 0 && $H_max != 0) {
             $ratiox = $W_Src / $W_max; // ratio en largeur
             $ratioy = $H_Src / $H_max; // ratio en hauteur
             $ratio = max($ratiox,$ratioy); // le plus grand
             $W = $W_Src/$ratio;
             $H = $H_Src/$ratio;   
             $condition = ($W_Src>$W) || ($W_Src>$H); // 1 si vrai (true)
          }      // -------------------------------------------------------------
          // B- HAUTEUR maxi fixe
          if ($W_max == 0 && $H_max != 0) {
             $H = $H_max;
             $W = $H * ($W_Src / $H_Src);
             $condition = $H_Src > $H_max; // 1 si vrai (true)
          }
          // -------------------------------------------------------------
          // C- LARGEUR maxi fixe
          if ($W_max != 0 && $H_max == 0) {
             $W = $W_max;
             $H = $W * ($H_Src / $W_Src);         
             $condition = $W_Src > $W_max; // 1 si vrai (true)
          }
          // -------------------------------------------------------------
          // on REDIMENSIONNE si la condition est vraie
          // -------------------------------------------------------------
          // Par defaut : 
    	  // Si l'image Source est plus petite que les dimensions indiquees :
    	  // PAS de redimensionnement.
    	  // Mais on peut "forcer" le redimensionnement en ajoutant ici :
    	  // $condition = 1;
          if ($condition == 1) {
             // ----------------------------------------------------------
             // creation de la ressource-image "Src" en fonction de l extension
             switch($extension) {
             case 'jpg':
             case 'jpeg':
               $Ress_Src = imagecreatefromjpeg($rep_Src.$img_Src);
               break;
             case 'png':
               $Ress_Src = imagecreatefrompng($rep_Src.$img_Src);
               break;
             }
             // ----------------------------------------------------------
             // creation d une ressource-image "Dst" aux dimensions finales
             // fond noir (par defaut)
             switch($extension) {
             case 'jpg':
             case 'jpeg':
               $Ress_Dst = imagecreatetruecolor($W,$H);
               break;
             case 'png':
               $Ress_Dst = imagecreatetruecolor($W,$H);
               // fond transparent (pour les png avec transparence)
               imagesavealpha($Ress_Dst, true);
               $trans_color = imagecolorallocatealpha($Ress_Dst, 0, 0, 0, 127);
               imagefill($Ress_Dst, 0, 0, $trans_color);
               break;
             }
             // ----------------------------------------------------------
             // REDIMENSIONNEMENT (copie, redimensionne, re-echantillonne)
             imagecopyresampled($Ress_Dst, $Ress_Src, 0, 0, 0, 0, $W, $H, $W_Src, $H_Src); 
             // ----------------------------------------------------------
             // ENREGISTREMENT dans le repertoire (avec la fonction appropriee)
             switch ($extension) { 
             case 'jpg':
             case 'jpeg':
               imagejpeg ($Ress_Dst, $rep_Dst.$img_Dst);
               break;
             case 'png':
               imagepng ($Ress_Dst, $rep_Dst.$img_Dst);
               break;
             }
             // ----------------------------------------------------------
             // liberation des ressources-image
             imagedestroy ($Ress_Src);
             imagedestroy ($Ress_Dst);
          }
          // -------------------------------------------------------------
       }
     }
    // 	---------------------------------------------------------------
     // si le fichier a bien ete cree
     if ($condition == 1 && file_exists($rep_Dst.$img_Dst)) { return true; }
     else { return false; }
    }
    // retourne : 1 (vrai) si le redimensionnement et l enregistrement ont bien eu lieu, sinon rien (false)
    // 	---------------------------------------------------------------
    ?>
    + un dossier "upload" pour enregistrer les images.

    Pour finir, j'ai remplacé ces 3 lignes (dans upload_essai2.php) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $nom_fichier = '130.jpeg';
     
    		$redimOK = fctredimimage(560,360,'upload/','130.jpeg','upload/','130.jpeg');
     
    			echo '<div class="image_fichier">'.'<img src="upload/130.jpeg" width="140px" height="90px" alt="Image" title="Image" /></div>';	// Affichage de l'image
    Par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $nom_fichier = date('Y_m_d_H_i_s').$ext; // Nom du fichier cible : date_jour.'jpg';
     
    		$redimOK = fctredimimage(560, 360, $upload_path, $nom_fichier, $upload_path, $nom_fichier);
     
    			echo '<div class="image_fichier">'.'<img src="'.$upload_path.$nom_fichier.'" style="width:140px" alt="Image" title="Image" /></div>';	// Affichage de l'image
    Dernière modification par Invité ; 02/05/2012 à 12h23.

  7. #7
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut
    Bonjour,

    Avec une photo qui fait 3,3 Mo :
    => OK: redimensionnement, affichage et message de succès !

    Avec une photo qui fait 2,1 Mo : (peut-être corrompue...)
    => message d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fatal error: Out of memory (allocated 164888576) (tried to allocate 4724 bytes) in redimens.php on line 99
    lignes dans redimens.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ...
    97		switch($extension) {
        97		case 'jpg':
        98		case 'jpeg':
        99		$Ress_Src = imagecreatefromjpeg($rep_Src.$img_Src);
        100		break;
    ....
    De plus, il ne fait pas le redimensionnement et enregistre quand même la photo dans /upload avec une image de 2,1 Mo !

    Si la photo est corrompue, pourquoi il ne met pas un message d'erreur et sans l'enregistrer ?
    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Redimenssionnement image sans WIA
    Par lucazzo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/08/2008, 14h27
  2. [GD] Utilisation de imagecreatefromjpeg() avec des images de plus de 2 000 pixels
    Par jojo33bx dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 11/09/2007, 19h40
  3. [Upload] Pb redimenssionnement image lors d'upload
    Par vica6a dans le forum Langage
    Réponses: 8
    Dernier message: 24/05/2007, 12h18
  4. Réponses: 5
    Dernier message: 10/05/2007, 12h35
  5. [FLASH 8] Morphing entre 2 images ou plus
    Par shaka84 dans le forum Flash
    Réponses: 1
    Dernier message: 13/05/2006, 17h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo