Rev 609 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php
include ("../../../../api/jpgraph_1.12.2/jpgraph.php") ;
include ("../../../../api/jpgraph_1.12.2/jpgraph_line.php") ;
include ("../../../../api/jpgraph_1.12.2/jpgraph_bar.php");
include ("../../../../papyrus/configuration/pap_config.inc.php") ;
include_once 'DB.php' ;
$db = DB::connect (PAP_DSN) ;
if (DB::isError($db)) {
echo 'Message Standard : ' . $db->getMessage() . "\n";
echo 'Message DBMS/Utilisateur : ' . $db->getUserInfo() . "\n";
echo 'Message DBMS/Déboguage : ' . $db->getDebugInfo() . "\n";
exit;
}
$tab_mois = array('Jan', 'Fev', 'Mar', 'Avr', 'Mai', 'Juin', 'Juil', 'Août', 'Sep', 'Oct', 'Nov', 'Dec');
$tab_donnees_add = array() ;
$tab_donnees_del = array() ;
if (isset($_GET['annee'])) {
$tps_debut = mktime(0, 0, 0, 1, 1, $_GET['annee']);
$tps_fin = mktime(23, 59, 59, 12, 31, $_GET['annee']);
$annee = $_GET['annee'];
} else {
$tps_debut = mktime(0, 0, 0, 1, 1);
$tps_fin = time();// jour courrant
$annee = date('Y', $tps_fin);
}
$tps_courrant = $tps_debut;
$i = 0;
//Requete par mois
while ($tps_courrant <= $tps_fin) {
$tps_semaine_suivante = $tps_courrant + (7 * 24 * 60 * 60);
$tps_mois_suivant = mktime(0, 0, 0,$i+2, 1, $annee);
//echo date('Y-m-d H:i:s', $tps_courrant).' - '.date('Y-m-d H:i:s', $tps_mois_suivant);
$requete = 'SELECT IS_ACTION '.
'FROM ins_STATS '.
'WHERE IS_DATE >= "'.date('Y-m-d H:i:s', $tps_courrant).'" '.
'AND IS_DATE < "'.date('Y-m-d H:i:s', $tps_mois_suivant).'" ';
$resultat = $db->query($requete) ;
$tab_donnees_add[$i] = 0 ;
$tab_donnees_del[$i] = 0 ;
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
if ($ligne->IS_ACTION == 'add') $tab_donnees_add[$i]++ ;
if ($ligne->IS_ACTION == 'del') $tab_donnees_del[$i]++ ;
}
//echo ' - '.$tab_donnees[$i-1].'<br/>';
$tps_courrant = $tps_mois_suivant;
$i++;
}
// Création du graphique
$graph = new Graph(500, 400, 'auto');
$graph->img->SetMargin(30, 30, 30, 40);
$graph->SetMarginColor('white');
$graph->SetScale('textint');
$graph->xaxis->SetTickLabels($tab_mois);
$graph->SetShadow();
$graph->title->Set('Évolution des inscriptions au Réseau');
$graph->title->SetFont(FF_FONT1,FS_BOLD);
$graph->xaxis->title->Set("Mois depuis le 1er janvier $annee");
$graph->legend->SetLayout(LEGEND_HOR);
$graph->legend->Pos(0.5, 0.05, 'left', 'top');
// Création des barres
$BarPlotAdd = new BarPlot($tab_donnees_add);
$BarPlotAdd->SetFillColor('orange');
$BarPlotAdd->value->Show();
$BarPlotAdd->value->SetFormat('%s');
$BarPlotAdd->SetLegend ('Inscription');
$BarPlotDel = new BarPlot($tab_donnees_del);
$BarPlotDel->SetFillColor('green');
$BarPlotDel->value->Show();
$BarPlotDel->value->SetFormat('%s');
$BarPlotDel->SetLegend ('Désinscription');
// Nous assemblons les barres
//$ab1plot = new AccBarPlot (array($BarPlotAdd ,$BarPlotDel));
$gbplot = new GroupBarPlot(array($BarPlotAdd, $BarPlotDel));
$graph->Add($gbplot);
$graph->Stroke();
?>