Warning: imagejpeg()

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Warning: imagejpeg()

Re: Warning: imagejpeg()

par moogli » 19 juin 2012, 19:46

Le problème que j'ai c'est que le script fonctionnait très bien sur notre ancien serveur roulant en php 5.2.12, le nouveau roule avec 5.3.13...
s'pas possible ça, c'est comme ça depuis php4 (d'après ce que dit la doc)
Liste de paramètres

image

Une ressource d'image, retournée par une des fonctions de création d'images, comme imagecreatetruecolor().
filename

Le chemin d'enregistrement du fichier. S'il n'est pas défini ou vaut NULL, le flux d'image brute sera affiché directement.

Pour éviter de fournir cet argument afin de fournir l'argument quality, utilisez une valeur NULL.
quality

quality est optionnel, et prend des valeurs entières de 0 (pire qualité, petit fichier) et 100 (meilleure qualité, gros fichier). Par défaut, la valeur est celle de la qualité IJG (75).
le second paramètre est le retour de imagecreatefromjpeg qui fournit une ressource dont php dit bien la véritée (d'ailleurs il a toujours raison hein ;) )
<?php
$image = imagecreatefromjpeg($image);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $nouvelle_largeur, $nouvelle_hauteur, $largeur_actuelle, $hauteur_actuelle);
imagejpeg($image_p,$image);
a vu de nez ce n'est pas $image qu'il faut utiliser mais $destination, et le copy est donc inutile.


je pense aussi que l'ancienne version n'affichée pas les erreurs ? :mrgreen:

@+

Re: Warning: imagejpeg()

par sebarpin » 19 juin 2012, 19:27

le message est clair imagejpeg() expects parameter 2 to be string, resource given

le second paramètre DOIT être une chaine de caractèer hors ty lui passe une ressources

plus d'info dans la doc doc de imagejpeg()

@+
Le problème que j'ai c'est que le script fonctionnait très bien sur notre ancien serveur roulant en php 5.2.12, le nouveau roule avec 5.3.13...

Re: Warning: imagejpeg()

par moogli » 19 juin 2012, 18:50

le message est clair imagejpeg() expects parameter 2 to be string, resource given

le second paramètre DOIT être une chaine de caractèer hors ty lui passe une ressources

plus d'info dans la doc doc de imagejpeg()

@+

Warning: imagejpeg()

par sebarpin » 19 juin 2012, 17:57

J'ai un script blogue.php qui a une fonction pour uploader des photos. Mais je reçois c'est message d'erreur:

Warning: imagejpeg() expects parameter 2 to be string, resource given in /var/www/vhosts/direction.qc.ca/httpdocs/administration/fonctions.php on line 154

Warning: copy() expects parameter 1 to be string, resource given in /var/www/vhosts/direction.qc.ca/httpdocs/administration/fonctions.php on line 166


Voici le code utilisé... en bold sont les ligne 154 et 166

<?php
function photo($image,$largeur_maximum,$destination){
$autorises = 'gifjpegjpgpngGIFJPEGJPGPNG';
$extension = explode('.',$destination);
$extension = strtolower($extension[sizeof($extension)-1]);

if(ereg($extension,$autorises)){
$dimensions = getimagesize($image);
$largeur_actuelle = $dimensions[0];
$hauteur_actuelle = $dimensions[1];

if($largeur_actuelle > $largeur_maximum){
$nouvelle_largeur = $largeur_maximum;
$nouvelle_hauteur = $hauteur_actuelle / ($largeur_actuelle / $largeur_maximum);
} else {
$nouvelle_largeur = $dimensions[0];
$nouvelle_hauteur = $dimensions[1];
}

if($extension == 'jpg' || $extension == 'jpeg'){
$image_p = imagecreatetruecolor($nouvelle_largeur, $nouvelle_hauteur);
$image = imagecreatefromjpeg($image);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $nouvelle_largeur, $nouvelle_hauteur, $largeur_actuelle, $hauteur_actuelle);
imagejpeg($image_p,$image);
} else if($extension == 'gif'){
$image_p = imagecreatetruecolor($nouvelle_largeur, $nouvelle_hauteur);
$image = imagecreatefromgif($image);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $nouvelle_largeur, $nouvelle_hauteur, $largeur_actuelle, $hauteur_actuelle);
imagegif($image_p,$image);
} else if($extension == 'png'){
$image_p = imagecreatetruecolor($nouvelle_largeur, $nouvelle_hauteur);
$image = imagecreatefrompng($image);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $nouvelle_largeur, $nouvelle_hauteur, $largeur_actuelle, $hauteur_actuelle);
imagepng($image_p,$image);
}
copy($image,$destination);
}
}
?>

Merci de votre aide!