problème header
Posté : 09 mai 2011, 18:48
En executant ce script j'ai un problème au niveau de cette instruction : header ("Content-type: image/png");
Il m'affiche comme message d'erreur : Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\
Par contre si j'execute le script avec des valeurs statiques , il marche comme celui ci :
Merci de m'aider
Il m'affiche comme message d'erreur : Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\
Code : Tout sélectionner
<?php
// information pour la connection à le DB
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'supervision';
// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
// requête SQL qui compte le nombre total d'enregistrements dans la table et qui
//récupère tous les enregistrements
$select1 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-01-01 00:00:01') AND (status_fail_date < '2011-02-01 00:00:01') ";
$result1 = mysql_query($select1,$link) or die ('Erreur : '.mysql_error() );
$select2 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-02-01 00:00:01') AND (status_fail_date < '2011-03-01 00:00:01') ";
$result2 = mysql_query($select2,$link) or die ('Erreur : '.mysql_error() );
$select3 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-03-01 00:00:01') AND (status_fail_date < '2011-04-01 00:00:01') ";
$result3 = mysql_query($select3,$link) or die ('Erreur : '.mysql_error() );
$select4 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-04-01 00:00:01') AND (status_fail_date < '2011-05-01 00:00:01') ";
$result4 = mysql_query($select4,$link) or die ('Erreur : '.mysql_error() );
$select5 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-05-01 00:00:01') AND (status_fail_date < '2011-06-01 00:00:01') ";
$result5 = mysql_query($select5,$link) or die ('Erreur : '.mysql_error() );
$select6 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-06-01 00:00:01') AND (status_fail_date < '2011-07-01 00:00:01') ";
$result6 = mysql_query($select6,$link) or die ('Erreur : '.mysql_error() );
$select7 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-07-01 00:00:01') AND (status_fail_date < '2011-08-01 00:00:01') ";
$result7 = mysql_query($select7,$link) or die ('Erreur : '.mysql_error() );
$select8 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-08-01 00:00:01') AND (status_fail_date < '2011-09-01 00:00:01') ";
$result8 = mysql_query($select8,$link) or die ('Erreur : '.mysql_error() );
$select9 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-09-01 00:00:01') AND (status_fail_date < '2011-10-01 00:00:01') ";
$result9 = mysql_query($select9,$link) or die ('Erreur : '.mysql_error() );
$select10 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-10-01 00:00:01') AND (status_fail_date < '2011-11-01 00:00:01') ";
$result10 = mysql_query($select10,$link) or die ('Erreur : '.mysql_error() );
$select11 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-11-01 00:00:01') AND (status_fail_date < '2011-12-01 00:00:01') ";
$result11 = mysql_query($select11,$link) or die ('Erreur : '.mysql_error() );
$select12 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - HUAWEI') AND (status_fail_date >= '2011-12-01 00:00:01') AND (status_fail_date < '2012-01-01 00:00:01') ";
$result12 = mysql_query($select12,$link) or die ('Erreur : '.mysql_error() );
$select13 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-01-01 00:00:01') AND (status_fail_date < '2011-02-01 00:00:01') ";
$result13 = mysql_query($select13,$link) or die ('Erreur : '.mysql_error() );
$select14 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-02-01 00:00:01') AND (status_fail_date < '2011-03-01 00:00:01') ";
$result14 = mysql_query($select14,$link) or die ('Erreur : '.mysql_error() );
$select15 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-03-01 00:00:01') AND (status_fail_date < '2011-04-01 00:00:01') ";
$result15 = mysql_query($select15,$link) or die ('Erreur : '.mysql_error() );
$select16 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-04-01 00:00:01') AND (status_fail_date < '2011-05-01 00:00:01') ";
$result16 = mysql_query($select16,$link) or die ('Erreur : '.mysql_error() );
$select17 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-05-01 00:00:01') AND (status_fail_date < '2011-06-01 00:00:01') ";
$result17 = mysql_query($select17,$link) or die ('Erreur : '.mysql_error() );
$select18 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-06-01 00:00:01') AND (status_fail_date < '2011-07-01 00:00:01') ";
$result18 = mysql_query($select18,$link) or die ('Erreur : '.mysql_error() );
$select19 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-07-01 00:00:01') AND (status_fail_date < '2011-08-01 00:00:01') ";
$result19 = mysql_query($select19,$link) or die ('Erreur : '.mysql_error() );
$select20 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-08-01 00:00:01') AND (status_fail_date < '2011-09-01 00:00:01') ";
$result20 = mysql_query($select20,$link) or die ('Erreur : '.mysql_error() );
$select21 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-09-01 00:00:01') AND (status_fail_date < '2011-10-01 00:00:01') ";
$result21 = mysql_query($select21,$link) or die ('Erreur : '.mysql_error() );
$select22 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-10-01 00:00:01') AND (status_fail_date < '2011-11-01 00:00:01') ";
$result22 = mysql_query($select22,$link) or die ('Erreur : '.mysql_error() );
$select23 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-11-01 00:00:01') AND (status_fail_date < '2011-12-01 00:00:01') ";
$result23 = mysql_query($select23,$link) or die ('Erreur : '.mysql_error() );
$select24 = "SELECT COUNT(hostname) AS nbre FROM stat where (marque = 'MSAN - SIEMENS') AND (status_fail_date >= '2011-12-01 00:00:01') AND (status_fail_date < '2012-01-01 00:00:01') ";
$result24 = mysql_query($select24,$link) or die ('Erreur : '.mysql_error() );
mysql_close();
while ($row1 = mysql_fetch_array($result1, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x1=$row1['nbre'] ;
// echo $x1 ;
}
while ($row2 = mysql_fetch_array($result2, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x2=$row2['nbre'] ;
// echo $x1 ;
}
while ($row3 = mysql_fetch_array($result3, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x3=$row3['nbre'] ;
// echo $x1 ;
}
while ($row4 = mysql_fetch_array($result4, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x4=$row4['nbre'] ;
// echo $x1 ;
}
while ($row5 = mysql_fetch_array($result5, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x5=$row5['nbre'] ;
// echo $x1 ;
}
while ($row6 = mysql_fetch_array($result6, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x6=$row6['nbre'] ;
// echo $x1 ;
}
while ($row7 = mysql_fetch_array($result7, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x7=$row7['nbre'] ;
// echo $x1 ;
}
while ($row8 = mysql_fetch_array($result8, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x8=$row8['nbre'] ;
// echo $x1 ;
}
while ($row9 = mysql_fetch_array($result9, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x9=$row9['nbre'] ;
// echo $x1 ;
}
while ($row10 = mysql_fetch_array($result10, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x10=$row10['nbre'] ;
// echo $x1 ;
}
while ($row11 = mysql_fetch_array($result11, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x11=$row11['nbre'] ;
// echo $x1 ;
}
while ($row12 = mysql_fetch_array($result12, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x12=$row12['nbre'] ;
// echo $x1 ;
}
while ($row13 = mysql_fetch_array($result13, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x13=$row13['nbre'] ;
// echo $x1 ;
}
while ($row14 = mysql_fetch_array($result14, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x14=$row14['nbre'] ;
// echo $x1 ;
}
while ($row15 = mysql_fetch_array($result15, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x15=$row15['nbre'] ;
// echo $x1 ;
}
while ($row16 = mysql_fetch_array($result16, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x16=$row16['nbre'] ;
// echo $x1 ;
}
while ($row17 = mysql_fetch_array($result17, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x17=$row17['nbre'] ;
// echo $x1 ;
}
while ($row18 = mysql_fetch_array($result18, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x18=$row18['nbre'] ;
// echo $x1 ;
}
while ($row19 = mysql_fetch_array($result19, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x19=$row19['nbre'] ;
// echo $x1 ;
}
while ($row20 = mysql_fetch_array($result20, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x20=$row20['nbre'] ;
// echo $x1 ;
}
while ($row21 = mysql_fetch_array($result21, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x21=$row21['nbre'] ;
// echo $x1 ;
}
while ($row22 = mysql_fetch_array($result22, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x22=$row['nbre'] ;
// echo $x1 ;
}
while ($row23 = mysql_fetch_array($result23, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x23=$row23['nbre'] ;
// echo $x1 ;
}
while ($row24 = mysql_fetch_array($result24, MYSQL_ASSOC)) {
//echo $row['nbre'] ;
$x24=$row24['nbre'] ;
// echo $x1 ;
}
$visites = array();
$visites1 = array();
$visites[0] = $x1;
$visites[1] = $x2;
$visites[2] = $x3;
$visites[3] = $x4;
$visites[4] = $x5;
$visites[5] = $x6;
$visites[6] = $x7;
$visites[7] = $x8;
$visites[8] = $x9;
$visites[9] = $x10;
$visites[10] = $x11;
$visites[11] = $x12;
$visites1[12] = $x13;
$visites1[13] = $x14;
$visites1[2] = $x15;
$visites1[3] = $x16;
$visites1[4] = $x17;
$visites1[5] = $x18;
$visites1[6] = $x19;
$visites1[7] = $x20;
$visites1[8] = $x21;
$visites1[9] = $x22;
$visites1[10] = $x23;
$visites1[11] = $x24;
header ("Content-type: image/png");
$largeurImage = 400;
$hauteurImage = 300;
$im = ImageCreate ($largeurImage, $hauteurImage)
or die ("Erreur lors de la création de l'image");
$blanc = ImageColorAllocate ($im, 255, 255, 255);
$noir = ImageColorAllocate ($im, 0, 0, 0);
$bleu = ImageColorAllocate ($im, 0, 0, 255);
$rouge = ImageColorAllocate ($im, 255, 0, 0);
$vert = ImageColorAllocate ($im, 0, 255, 0);
// on dessine un trait vertical pour représenter l'axe du temps
ImageLine ($im, 10, $hauteurImage-10, $largeurImage-10, $hauteurImage-10, $noir);
// on affiche le numéro des 12 mois
for ($mois=1; $mois<=12; $mois++) {
ImageString ($im, 0, $mois*30, $hauteurImage-10, $mois, $noir);
}
// on dessine un trait vertical pour représenter le nombre de visites
ImageLine ($im, 10, 10, 10, $hauteurImage-10, $noir);
// le nombre maximum de visites
$visitesMax = 1000;
$visitesMax1 = 1000;
// tracé des batons
for ($mois=1; $mois<=12; $mois++) {
$hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax);
$hauteurImageRectangle1 = round(($visites1[$mois-1]*$hauteurImage)/$visitesMax1);
ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $rouge);
ImageFilledRectangle ($im,$mois*30+7, $hauteurImage-$hauteurImageRectangle1, ($mois*30+7)+($mois*30+7) - ($mois*30-7) , $hauteurImage-10, $bleu);
ImageString ($im, 1, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $rouge);
ImageString ($im, 1, $mois*30+7, $hauteurImage-$hauteurImageRectangle1-10, $visites1[$mois-1], $bleu);
}
// et c'est fini...
ImagePng ($im);
msql_free_result($result1);
msql_free_result($result2);
msql_free_result($result3);
msql_free_result($result4);
msql_free_result($result5);
msql_free_result($result6);
msql_free_result($result7);
msql_free_result($result8);
msql_free_result($result9);
msql_free_result($result10);
msql_free_result($result11);
msql_free_result($result12);
msql_free_result($result13);
msql_free_result($result14);
msql_free_result($result15);
msql_free_result($result16);
msql_free_result($result17);
msql_free_result($result18);
msql_free_result($result19);
msql_free_result($result20);
msql_free_result($result21);
msql_free_result($result22);
msql_free_result($result23);
msql_free_result($result24);
?>Code : Tout sélectionner
<?php
$visites = array(10, 90, 381, 652, 896, 720, 140, 556, 663, 331, 407, 768);
$visites1 = array(199, 891, 356, 200, 700, 200, 330, 500, 900, 390, 400, 600);
header ("Content-type: image/png");
$largeurImage = 400;
$hauteurImage = 300;
$im = ImageCreate ($largeurImage, $hauteurImage)
or die ("Erreur lors de la création de l'image");
$blanc = ImageColorAllocate ($im, 255, 255, 255);
$noir = ImageColorAllocate ($im, 0, 0, 0);
$bleu = ImageColorAllocate ($im, 0, 0, 255);
$rouge = ImageColorAllocate ($im, 255, 0, 0);
$vert = ImageColorAllocate ($im, 0, 255, 0);
// on dessine un trait vertical pour représenter l'axe du temps
ImageLine ($im, 10, $hauteurImage-10, $largeurImage-10, $hauteurImage-10, $noir);
// on affiche le numéro des 12 mois
for ($mois=1; $mois<=12; $mois++) {
ImageString ($im, 0, $mois*30, $hauteurImage-10, $mois, $noir);
}
// on dessine un trait vertical pour représenter le nombre de visites
ImageLine ($im, 10, 10, 10, $hauteurImage-10, $noir);
// le nombre maximum de visites
$visitesMax = 1000;
$visitesMax1 = 1000;
// tracé des batons
for ($mois=1; $mois<=12; $mois++) {
$hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax);
$hauteurImageRectangle1 = round(($visites1[$mois-1]*$hauteurImage)/$visitesMax1);
ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $rouge);
ImageFilledRectangle ($im,$mois*30+7, $hauteurImage-$hauteurImageRectangle1, ($mois*30+7)+($mois*30+7) - ($mois*30-7) , $hauteurImage-10, $bleu);
ImageString ($im, 1, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $rouge);
ImageString ($im, 1, $mois*30+7, $hauteurImage-$hauteurImageRectangle1-10, $visites1[$mois-1], $bleu);
}
// et c'est fini...
ImagePng ($im);
?>