begin process at 2010 02 10 08:59:35
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > CRÉATION D'UN GRAPHIQUE AVEC DES STATISTIQUES MYSQL (RELOAD OU NON) OPTIONS UTILES...

CRÉATION D'UN GRAPHIQUE AVEC DES STATISTIQUES MYSQL (RELOAD OU NON) OPTIONS UTILES...


 Information sur la source

Note :
6,5 / 10 - par 2 personnes
6,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Niveau :Débutant Date de création :16/05/2005 Date de mise à jour :16/05/2005 03:01:25 Vu / téléchargé :8 968 / 769

Auteur : kegi

Ecrire un message privé
Site perso
Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Comme son nom l'indique, ce script trace un graphique, clair et net, de vos statistiques sauvegardés dans une base de données mySql. Très utile et bien expliqué... Si vous avez des problèmes à faire fonctionner le script, dites le moi. Il fait une colonne pour chaque mois de l'année courante (enregistre la/les visite(s) unique(s) (avec cookie) et la/les connexion(s) (sans cookie)).

Source

  • <?php
  • /*
  • Script réalisé par Kevin Gilbert (KeGi)
  • une très petite partie de script du graphique est inspirée de www.phpdebutant.org
  • IMPORTANT: vous devez créer une table "stats" et uploader le fichier SQl qui vient avec le zip
  • Pour afficher le graphique du/des visiteur(s) unique(s):
  • <img border="1" src="compteur.php?what=no_reload&save=no" alt="Nombre de visiteurs" /> (affichage sans les reloads et ne sauvegarde pas)
  • Pour afficher la/les connexion(s):
  • <img border="1" src="compteur.php?what=reload&save=no" alt="Nombre de visiteurs" /> (affichage avec les reloads et ne sauvegarde pas)
  • Pour insérer le code qui enrégistre les visiteurs (invisible):
  • <?php $what="save"; $save="yes"; include("compteur.php"); ?> (en début de page sans espace)
  • pour afficher le nombre de visiteur(s) ce mois-ci :
  • <?php $what="save"; $save="no"; include("compteur.php"); echo $hit; ?>
  • pour afficher le nombre de connexion(s) ce mois-ci :
  • <? $what="save"; $save="no"; include("compteur.php"); echo $hit2; ?>
  • bonne prog ;)
  • */
  • if($what==""){ $what="no_reload"; }
  • if($save==""){ $save="yes"; }
  • $host = "localhost";
  • $user = "root";
  • $pass = "";
  • $table = "stats";
  • mysql_connect($host,$user,$pass);
  • mysql_select_db("Base");
  • $m = date("m"); //numéro du mois
  • $a = date("Y"); //année
  • //partie qui ne compte pas les reloads...
  • $query = "SELECT * FROM $table WHERE (year='$a' && month='$m' && type='no_reload')";
  • $result = mysql_query($query);
  • $nbrep = mysql_numrows($result);
  • if($nbrep=="0"){ //si le mois n'est pas entré, on l'ajoute
  • if($save=="yes"){
  • $query = "INSERT INTO $table(hit,year,month,type)";
  • $query .= " VALUES('1','$a','$m','no_reload')";
  • $result = mysql_query($query);
  • }
  • }else{ //sinon on récupère la valeur du compteur
  • while ($val = mysql_fetch_array($result)) {
  • $hit=$val["hit"]; if($hit==""){ $hit = 0; }
  • }
  • }
  • if(empty($_COOKIE["Visite"])){ //si le visiteur n'a pas de cookie, on incrémente le compteur
  • $hit ++;
  • if($save=="yes"){
  • setcookie("Visite","ok",time()+365*24*3600); //on lui donne un cookie d'un an
  • }
  • }
  • if($save=="yes"){ //on enregistre le compteur incrémenté ou non...
  • $query = "UPDATE $table SET hit='$hit'";
  • $query .= " WHERE year='$a' && month='$m' && type='no_reload'";
  • $result = mysql_query($query);
  • }
  • // partie qui compte les reloads... (même chose sauf qu'ici on met le champ type en reload et on ne met pas de cookie)
  • $query = "SELECT * FROM $table WHERE (year='$a' && month='$m' && type='reload')";
  • $result = mysql_query($query);
  • $nbrep = mysql_numrows($result);
  • if($nbrep=="0"){
  • if($save=="yes"){
  • $query = "INSERT INTO $table(hit,year,month,type)";
  • $query .= " VALUES('1','$a','$m','reload')";
  • $result = mysql_query($query);
  • }
  • }else{
  • while ($val = mysql_fetch_array($result)) {
  • $hit2=$val["hit"]; if($hit2==""){ $hit2 = 0; }
  • }
  • }
  • $hit2 ++;
  • if($save=="yes"){
  • $query = "UPDATE $table SET hit='$hit2'";
  • $query .= " WHERE year='$a' && month='$m' && type='reload'";
  • $result = mysql_query($query);
  • }
  • if($what!=="save"){
  • //dessin du graphique...
  • $query = "SELECT * FROM $table WHERE (year='$a' && type='$what')"; //requette mysql pour savoir quoi afficher
  • $result = mysql_query($query);
  • $nbrep = mysql_numrows($result);
  • while ($val = mysql_fetch_array($result)) {
  • $month = $val["month"];
  • $mois[$month]=$val["hit"]; if($mois[$month]==""){ $mois[$month] = 0; } //arrabgement des 12 mois ou valeur de 0
  • }
  • $nbuse = 0;
  • $top = 0;
  • while($nbuse<12){
  • $nbuse ++;
  • if($mois[$nbuse]==""){ $mois[$nbuse]="0"; }
  • if($mois[$nbuse]>$top){ $top=$mois[$nbuse]; }
  • //on veux savoir qu'elle est la plus grande des valeurs (il doit surement exister une meilleure facon mais ca marche ...)
  • }
  • $visites = array($mois[1], $mois[2], $mois[3], $mois[4], $mois[5], $mois[6], $mois[7], $mois[8], $mois[9], $mois[10], $mois[11], $mois[12]);
  • $pl=0;
  • header ("Content-type: image/png"); //on entre en mode image
  • $largeurImage = 400; //largeur du graphique
  • $hauteurImage = 300; //hauteur du graphique
  • $topmonth = $top; //Pour mettre la colone la plus haute en rouge
  • $top = ($top + 10); //une marge d'erreur pour voir les chiffres en dessus des colones
  • $im = ImageCreate ($largeurImage, $hauteurImage) //on créer l'image
  • or die ("Erreur lors de la création du graphique");
  • $blanc = ImageColorAllocate ($im, 255, 255, 255); //couleurs préfaite...
  • $noir = ImageColorAllocate ($im, 0, 0, 0);
  • $bleu = ImageColorAllocate ($im, 0, 0, 255);
  • $rouge = ImageColorAllocate ($im, 255, 0, 0);
  • ImageLine ($im, 10, $hauteurImage-10, $largeurImage-10, $hauteurImage-10, $noir);
  • for ($mois=1; $mois<=12; $mois++) { //assosiation des lettre avec les numéro de mois, encore là surement pas la meilleure facon mais ça marche ...
  • if($mois=="1"){ $mois_lettre = "J"; }
  • if($mois=="2"){ $mois_lettre = "F"; }
  • if($mois=="3"){ $mois_lettre = "M"; }
  • if($mois=="4"){ $mois_lettre = "A"; }
  • if($mois=="5"){ $mois_lettre = "M"; }
  • if($mois=="6"){ $mois_lettre = "J"; }
  • if($mois=="7"){ $mois_lettre = "J"; }
  • if($mois=="8"){ $mois_lettre = "A"; }
  • if($mois=="9"){ $mois_lettre = "S"; }
  • if($mois=="10"){ $mois_lettre = "O"; }
  • if($mois=="11"){ $mois_lettre = "N"; }
  • if($mois=="12"){ $mois_lettre = "D"; }
  • ImageString ($im, 0, $mois*30, $hauteurImage-10, $mois_lettre, $noir);
  • }
  • ImageLine ($im, 10, 10, 10, $hauteurImage-10, $noir);
  • $visitesMax = $top; //maximum des colones
  • for ($mois=1; $mois<=12; $mois++) { //dessinage des colones...
  • if($visites[$mois-1]==$topmonth){ //si c'est la plus haute ou égale : Rouge
  • $hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax);
  • ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $rouge);
  • ImageString ($im, 0, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $rouge);
  • }else{ //sinon Bleu
  • $hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax);
  • ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $bleu);
  • ImageString ($im, 0, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $rouge);
  • }
  • }
  • ImagePng ($im); //affichage de l'image ...
  • }
  • mysql_close(); //fermeture de la connexion mysql
  • ?>
<?php

/* 

 Script réalisé par Kevin Gilbert (KeGi)

 une très petite partie de script du graphique est inspirée de www.phpdebutant.org


IMPORTANT: vous devez créer une table "stats" et uploader le fichier SQl qui vient avec le zip

 Pour afficher le graphique du/des visiteur(s) unique(s):
 <img border="1" src="compteur.php?what=no_reload&save=no" alt="Nombre de visiteurs" /> (affichage sans les reloads et ne sauvegarde pas)

 Pour afficher la/les connexion(s):
 <img border="1" src="compteur.php?what=reload&save=no" alt="Nombre de visiteurs" /> (affichage avec les reloads et ne sauvegarde pas)

 Pour insérer le code qui enrégistre les visiteurs (invisible):
 <?php $what="save"; $save="yes"; include("compteur.php"); ?> (en début de page sans espace)

 pour afficher le nombre de visiteur(s) ce mois-ci :
 <?php $what="save"; $save="no"; include("compteur.php"); echo $hit; ?>

 pour afficher le nombre de connexion(s) ce mois-ci :
 <? $what="save"; $save="no"; include("compteur.php"); echo $hit2; ?>

 bonne prog ;)

*/

if($what==""){ $what="no_reload"; }

if($save==""){ $save="yes"; }

$host = "localhost";
$user = "root";
$pass = "";
$table = "stats";
mysql_connect($host,$user,$pass);
mysql_select_db("Base");

$m = date("m"); //numéro du mois
$a = date("Y"); //année

//partie qui ne compte pas les reloads...

  $query = "SELECT * FROM $table WHERE (year='$a' && month='$m' && type='no_reload')"; 
  $result = mysql_query($query);
  $nbrep = mysql_numrows($result);

if($nbrep=="0"){ //si le mois n'est pas entré, on l'ajoute

if($save=="yes"){

   $query = "INSERT INTO $table(hit,year,month,type)";
   $query .= " VALUES('1','$a','$m','no_reload')"; 
   $result = mysql_query($query);

}

}else{ //sinon on récupère la valeur du compteur

  while ($val = mysql_fetch_array($result)) { 
  $hit=$val["hit"]; if($hit==""){ $hit = 0; }

  }
}

if(empty($_COOKIE["Visite"])){ //si le visiteur n'a pas de cookie, on incrémente le compteur
  $hit ++;

if($save=="yes"){

setcookie("Visite","ok",time()+365*24*3600); //on lui donne un cookie d'un an

}

}

if($save=="yes"){ //on enregistre le compteur incrémenté ou non...

   $query = "UPDATE $table SET hit='$hit'";
   $query .= " WHERE year='$a' && month='$m' && type='no_reload'";
   $result = mysql_query($query);

}

// partie qui compte les reloads... (même chose sauf qu'ici on met le champ type en reload et on ne met pas de cookie)

  $query = "SELECT * FROM $table WHERE (year='$a' && month='$m' && type='reload')"; 
  $result = mysql_query($query);
  $nbrep = mysql_numrows($result);

if($nbrep=="0"){

if($save=="yes"){

   $query = "INSERT INTO $table(hit,year,month,type)";
   $query .= " VALUES('1','$a','$m','reload')"; 
   $result = mysql_query($query);

}

}else{

  while ($val = mysql_fetch_array($result)) { 
  $hit2=$val["hit"]; if($hit2==""){ $hit2 = 0; }

  }
}

$hit2 ++;

if($save=="yes"){

   $query = "UPDATE $table SET hit='$hit2'";
   $query .= " WHERE year='$a' && month='$m' && type='reload'";
   $result = mysql_query($query);

}

if($what!=="save"){

//dessin du graphique...

  $query = "SELECT * FROM $table WHERE (year='$a' && type='$what')"; //requette mysql pour savoir quoi afficher
  $result = mysql_query($query);
  $nbrep = mysql_numrows($result);

while ($val = mysql_fetch_array($result)) { 

  $month = $val["month"];

  $mois[$month]=$val["hit"]; if($mois[$month]==""){ $mois[$month] = 0; } //arrabgement des 12 mois ou valeur de 0

}

  $nbuse = 0;

  $top = 0;

while($nbuse<12){

  $nbuse ++;

if($mois[$nbuse]==""){ $mois[$nbuse]="0"; }

if($mois[$nbuse]>$top){ $top=$mois[$nbuse]; } 

//on veux savoir qu'elle est la plus grande des valeurs (il doit surement exister une meilleure facon mais ca marche ...)

}



  $visites = array($mois[1], $mois[2], $mois[3], $mois[4], $mois[5], $mois[6], $mois[7], $mois[8], $mois[9], $mois[10], $mois[11], $mois[12]); 


  $pl=0;

    header ("Content-type: image/png");  //on entre en mode image


    $largeurImage = 400;  //largeur du graphique
    $hauteurImage = 300;  //hauteur du graphique

    $topmonth = $top; //Pour mettre la colone la plus haute en rouge

    $top = ($top + 10); //une marge d'erreur pour voir les chiffres en dessus des colones

    $im = ImageCreate ($largeurImage, $hauteurImage)  //on créer l'image
            or die ("Erreur lors de la création du graphique");          
    $blanc = ImageColorAllocate ($im, 255, 255, 255);  //couleurs préfaite...
    $noir = ImageColorAllocate ($im, 0, 0, 0);   
    $bleu = ImageColorAllocate ($im, 0, 0, 255);        
    $rouge = ImageColorAllocate ($im, 255, 0, 0);

    ImageLine ($im, 10, $hauteurImage-10, $largeurImage-10, $hauteurImage-10, $noir); 
    for ($mois=1; $mois<=12; $mois++) {  //assosiation des lettre avec les numéro de mois, encore là surement pas la meilleure facon mais ça marche ...

if($mois=="1"){ $mois_lettre = "J"; }

if($mois=="2"){ $mois_lettre = "F"; }

if($mois=="3"){ $mois_lettre = "M"; }

if($mois=="4"){ $mois_lettre = "A"; }

if($mois=="5"){ $mois_lettre = "M"; }

if($mois=="6"){ $mois_lettre = "J"; }

if($mois=="7"){ $mois_lettre = "J"; }

if($mois=="8"){ $mois_lettre = "A"; }

if($mois=="9"){ $mois_lettre = "S"; }

if($mois=="10"){ $mois_lettre = "O"; }

if($mois=="11"){ $mois_lettre = "N"; }

if($mois=="12"){ $mois_lettre = "D"; }

        ImageString ($im, 0, $mois*30, $hauteurImage-10, $mois_lettre, $noir); 
    } 
     
     ImageLine ($im, 10, 10, 10, $hauteurImage-10, $noir); 
     

    $visitesMax = $top; //maximum des colones
     
    for ($mois=1; $mois<=12; $mois++) {  //dessinage des colones...

    if($visites[$mois-1]==$topmonth){ //si c'est la plus haute ou égale : Rouge

$hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax);

        ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $rouge); 

        ImageString ($im, 0, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $rouge); 

 }else{ //sinon Bleu


$hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax);

        ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $bleu); 

        ImageString ($im, 0, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $rouge); 


 }

        

    } 


ImagePng ($im); //affichage de l'image ...

}

mysql_close(); //fermeture de la connexion mysql



?>

 Conclusion

n'oubliez pas d'uploader le script sql sur votre serveur et ne mettez pas d'espace ou de commandes avant le script.

laissez vos commentaires.

bonne prog ;)

cordialement,
kevin (kegi@hotmail.com)

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

16 mai 2005 01:50:53 :
Ajout d'une capture d'écran
16 mai 2005 03:01:25 :
correction de fautes... merci GRenard ;) pardonnez-moi s'il en reste ...

 Sources du même auteur

Source avec Zip SCANNEUR DE MAILS GÉANT... AVEC ANALYSE DE MOTEUR DE RECHERC...

 Sources de la même categorie

Source avec Zip RECHERCHE DE MOTIF DANS UNE IMAGE par ParseError
BARRES PARAMÉTRABLES EN DÉGRADÉ DE COULEUR ET AVEC TEXTE DA... par hornetbzz
Source avec Zip Source avec une capture GALERIE PHOTO SIMPLE À GÉRER par francky6691
Source avec Zip Source avec une capture DIAPORAMA AVEC AJOUT ET REDIMENSIONEMENT DE PHOTOS, CRÉATION... par giloum
Source avec Zip Source avec une capture AFFICHAGE INFOBULLE SUR GRAPHIQUE ARTICHOW par nirronico

Commentaires et avis

Commentaire de coockiesch le 16/05/2005 11:35:40

Salut!
Pas tout le temps de regarder mais deux petites remarques: Pour commencer, il faut tester les retours mysql ( connextion, sélection de base, query, ... )

if(!@mysql_connect($host,$user,$pass) || !@mysql_select_db("Base"))
  die('Erreur');
Idem pour les requêtes

Pour les mois, tu peux faire:
$mois_lettres = array('J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D');
$mois_lettre = $mois_lettres[ $mois - 1];

Autrement, ca à l'air sympa.

@++

R@f

Commentaire de kegi le 17/05/2005 01:17:19

Merci pour ton commentaire constructif ;)

cordialement,
kegi@hotmail.com

Commentaire de oki972 le 18/10/2005 22:28:16

salut!!
J'utilise ta source pour essayer de faire un petit module de statistiques. Je prends chaque mois de l'année et je calcule ce que j'ai dépensé pour mes interventions.
Malheureusement le graphique ne sort pas, j'cherche mais je trouve pas, peut-on m'aider?

Voici ma source :

<?php
header ("Content-type: image/png");  //on entre en mode image

include("../../Mysql/connexion.php");
function nbjour($m,$a)
{
if(($a%4)==0)
{
$fev=29;
}
else
{
$fev=28;
}
$mois = array(0,31,$fev,31,30,31,30,31,31,30,31,30,31);
for($x=1;$x<13;$x++)
{
if($m == $x)
{
return $mois[$x];
}
}
}

$m = date("m"); //numéro du mois
$a = date("Y"); //année

//Pour tous les mois de l'année on va calculer le cout engendrer !
for($i=1;$i<=12;$i++){
$nbJours_sql2 = nbjour($i,$a);
if ($i<10) $m = "0".$i; else $m=$i;
$premierjour_sql = "$a"."-"."$m"."-"."01";
$dernierjour_sql = "$a"."-"."$m"."-"."$nbJours_sql2";
//maintenant qu'on les dates concernées pour chaque mois on peut faire notre requete
$req0 = mysql_query("SELECT * from dbinterventions p ,dbplanning q WHERE p.int_ID = q.pla_IDIntervention AND p.int_Date>='$premierjour_sql' and p.int_Date<='$dernierjour_sql'");
//
$total = 0;
$cout = 0;
while ($rs = mysql_fetch_object($req0)) {
//
$heuredeb = $rs->pla_HeureDebut;
$heurefin = $rs->pla_HeureFin;
$heuredeb = substr($heuredeb,0,5);
$heuredeb = str_replace(':','',$heuredeb);
$heurefin = substr($heurefin,0,5);
$heurefin = str_replace(':','',$heurefin);

if ($heurefin!=0) {
if ($heurefin<=$heuredeb) {
//Etape 1
$hfin = substr($heurefin,0,2);
$mfin = substr($heurefin,2,2);
$heurefin = $hfin+($mfin/60);
$tampon_duree = $heurefin - $minuit;
//Etape 2
$minuit2=24;
$hdeb = substr($heuredeb,0,2);
$mdeb = substr($heuredeb,2,2);
$heuredeb = $hdeb+($mdeb/60);
$tamponduree2 = $minuit2 - $heuredeb;
//Totalisons...
$duree = $tampon_duree+$tamponduree2;
$cout = $rs->pla_Coefficient * $rs->pla_TauxHoraire * round($duree,2);
}else{
$hdeb = substr($heuredeb,0,2);
$mdeb = substr($heuredeb,2,2);
$hfin = substr($heurefin,0,2);
$mfin = substr($heurefin,2,2);
//Maintenant on transforme les deux o format décimal ..
//Pour cela, on divise les minutes par 60 et on arrondi au centième
$heuredeb = $hdeb+($mdeb/60);
$heurefin = $hfin+($mfin/60);
$duree = $heurefin-$heuredeb;
//Cout
$cout = $rs->pla_Coefficient * $rs->pla_TauxHoraire * round($duree,2);
}
}else{
$duree=0;
//Cout
$cout = $rs->pla_Coefficient * $rs->pla_TauxHoraire * round($duree,2);
}
//echo $cout;
$total = $total + $cout;
}
//
$mois[$i] = round($total,2);
// exit;

}

$top = max($mois);

//dessin du graphique...

  $visites = array($mois[1], $mois[2], $mois[3], $mois[4], $mois[5], $mois[6], $mois[7], $mois[8], $mois[9], $mois[10], $mois[11], $mois[12]);


  $pl=0;


    $largeurImage = 700;  //largeur du graphique
    $hauteurImage = 300;  //hauteur du graphique

    $topmonth = $top; //Pour mettre la colone la plus haute en rouge

    $top = ($top + 1000); //une marge d'erreur pour voir les chiffres en dessus des colones

    $im = ImageCreate($largeurImage, $hauteurImage)  //on créer l'image
            or die ("Erreur lors de la création du graphique");          
    $blanc = ImageColorAllocate ($im, 255, 255, 255);  //couleurs préfaite...
    $noir = ImageColorAllocate ($im, 0, 0, 0);  
    $bleu = ImageColorAllocate ($im, 0, 0, 255);        
    $rouge = ImageColorAllocate ($im, 255, 0, 0);

    ImageLine ($im, 10, $hauteurImage-10, $largeurImage-10, $hauteurImage-10, $noir);
    for ($mois=1; $mois<=12; $mois++) {  //assosiation des lettre avec les numéro de mois, encore là surement pas la meilleure facon mais ça marche ...

if($mois=="1"){ $mois_lettre = "J"; }
if($mois=="2"){ $mois_lettre = "F"; }
if($mois=="3"){ $mois_lettre = "M"; }
if($mois=="4"){ $mois_lettre = "A"; }
if($mois=="5"){ $mois_lettre = "M"; }
if($mois=="6"){ $mois_lettre = "J"; }
if($mois=="7"){ $mois_lettre = "J"; }
if($mois=="8"){ $mois_lettre = "A"; }
if($mois=="9"){ $mois_lettre = "S"; }
if($mois=="10"){ $mois_lettre = "O"; }
if($mois=="11"){ $mois_lettre = "N"; }
if($mois=="12"){ $mois_lettre = "D"; }

    ImageString ($im, 0, $mois*30, $hauteurImage-10, $mois_lettre, $noir);
    }
    
    ImageLine ($im, 10, 10, 10, $hauteurImage-10, $noir);

    $visitesMax = $top; //maximum des colones
    
    for ($mois=1; $mois<=12; $mois++) {  //dessinage des colones...
     if($visites[$mois-1]==$topmonth){ //si c'est la plus haute ou égale : Rouge
$hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax);
ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $rouge);
ImageString ($im, 0, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $rouge);
}else{ //sinon Bleu
$hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax);
ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $bleu);
ImageString ($im, 0, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $rouge);
}
    }


ImagePng ($im); //affichage de l'image ...

mysql_close(); //fermeture de la connexion mysql

?>

Commentaire de kegi le 04/11/2005 04:47:52

Salut,

tu doit afficher le fichier php en image...
ex: <img src="stats.php" />

Je te donne cette réponse en suposant que tu débute en php, si je me trompe et que l'erreur n'est pas à cette endroit, dit moi ;)

cordialement,
kevin (kegi@hotmail.com)

Commentaire de coucou747 le 05/02/2006 14:37:48

c'est dégeu comme code :

#
# if($mois=="1"){ $mois_lettre = "J"; }
#  
# if($mois=="2"){ $mois_lettre = "F"; }
#  
# if($mois=="3"){ $mois_lettre = "M"; }
#  
# if($mois=="4"){ $mois_lettre = "A"; }
#  
# if($mois=="5"){ $mois_lettre = "M"; }
#  
# if($mois=="6"){ $mois_lettre = "J"; }
#  
# if($mois=="7"){ $mois_lettre = "J"; }
#  
# if($mois=="8"){ $mois_lettre = "A"; }
#  
# if($mois=="9"){ $mois_lettre = "S"; }
#  
# if($mois=="10"){ $mois_lettre = "O"; }
#  
# if($mois=="11"){ $mois_lettre = "N"; }
#  
# if($mois=="12"){ $mois_lettre = "D"; }
#  

pourquoi ne pas faire de boucles ?

t'as oublié tout les or die() pour est erreurs de connexions et de requettes !

Commentaire de kegi le 06/02/2006 08:57:43

Tu as raison, j'était dans ma phase "je sais appuyer sur un bouton donc j'envoie n'importe quelle source bidon" un tableau aurait été mieux qu'une boucle ici... Merci quand même du commentaire ;)

Cordialement,
Kevin (kegi@hotmail.com)

Commentaire de superslouma le 26/07/2006 13:31:07

Merci coockiesch pour ton script .
je suis entrain de produire un script semblable. mais je veux que le graphique soit automatiquement mis à jours.
par exemple chaque 5 secondes se passe une actualisation.
j'ai essayé avec history.go(0) au niveau du html mais ça a foirrrrréééé.
Si quelqu'un peut m'aider...

Commentaire de kegi le 22/02/2008 02:45:34

Bonjour,
bon, ça fait longtemps que j'ai fait cette source, c'est merdique,
je te conseil de t'en faire une en php5, ensuite, utilise le ajax pour rafraichir,
mais, avec un graphique à bandes, il est inutile de rafraichir aussi souvent, si tu as un graphique à ligne brisé, là, ça peut être intéressant.

mais... au 5 secondes, si tu as beaucoup de visiteurs, ça doit rallentir un peu ton serveur, non ?

Cordiallement,
Kevin

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,250 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales