Eléphanteau du PHP |
18 Messages
26 janv. 2006, 11:03
Alors j'ai essayé d'intégrer le nouveau code dans ma page image.php qui doit me créer l'image dynamique mais le code ne prend pas en compte les différentes valeurs de $pourcent.
<?php
header ("Content-type: image/png");
include( "mysql.inc.php" );
$requete = "SELECT *, MATCH (fr) AGAINST ('pluie') AS score FROM japfr WHERE MATCH (fr) AGAINST('pluie' IN BOOLEAN MODE) ORDER BY score DESC";
$execution = mysql_query( $requete, $connection );
while( $un_mot = mysql_fetch_array( $execution ) )
{
$i = 0;
$valeur= round ($un_mot["score"],3);
$coeff = ($i == 0) ? round(100/$valeur) : $coeff;
$pourcent = ($i == 0) ? 100 : $valeur * $coeff;
$largeurImage = 50;
$hauteurImage = 10;
$image = imagecreate ($largeurImage, $hauteurImage) or die ("Erreur lors de la création de l'image");
$fond = imagecolorallocate($image, 143, 190, 241); // Fond bleu clair
$fond2 = imagecolorallocate($image, 25, 25, 25); // colonne blanc
$couleur_texte = imagecolorallocate($image, 255, 255, 255); // Texte en blanc
$largeurImageRectangle = $pourcent; // c'est ici que la valeur change
ImageFilledRectangle ($image, 0, 0, $largeurImageRectangle,40, $fond2); // elle devient la longueur du rectangle
$i++;
}
imagestring($image, 0, 0, 0, $pourcent, $couleur_texte); // On affiche la valeur de $pourcent dans la barre
imagepng($image);
?>
Mais j'ai toujours 100 ! et si je change $pourcent par ($i == 0) ? 100 : $valeur * $coeff; il me retourne la deuxième valeur ! J'ai l'impression que c'est un problème dans la boucle mais je ne comprends pas pourquoi ce qui marche pour result.php ne marche pas pour image.php..