Graphique avec artishow depuis une base de donnée

yostudio Messages postés 6 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 26 janvier 2009 - 14 janv. 2009 à 15:12
yostudio Messages postés 6 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 26 janvier 2009 - 14 janv. 2009 à 16:53
Alors, j'ai besoin de créer un Graphique qui vas afficher des temps de réponses d'un annuaire LDAP.

J'ai testé la solution artishow qui fonctionne bien.

Mais je cherche ce que je doit modifier pour qu'il récupère les information sur ma base de donnée, les stock dans un tableau et les utilises comme il le fait avec cette ligne :

 $data3[] = array(0,9,8,0,5,11,12,11,6,7,9,3,5,1,6,5,8,6);

voici mon code :

<?php
// Include avec toutes mes fonctions qui vont bien...
include('artichow-1.1.0/statistiques_include.php');

/********* Connexion a la base de donnée **********/

$base = mysql_connect ('serveur', 'utilisateur', 'mdp'); 
mysql_select_db ('nomdelabase', $base) ; 

// lancement de la requete 
$repsql = mysql_query("SELECT * FROM journee") or die(mysql_error());

// La courbe

// Avec cette boucle, on récupère temps de réponse
 
while ($data3 = mysql_fetch_array($repsql) )
{
    echo $data3['moytemps'] ;
    echo "
";
}

# $data3[moytemps] = array();
/*********   Courbe pour 24h  **********/

// on ferme notre base de donnée
mysql_close ();

// affichage de ma seconde courbe
$data3[] = array(0,9,8,0,5,11,12,11,6,7,9,3,5,1,6,5,8,6);

// Tableau des lÈgendes
$legend = array('Temps de rep','Test02');
// Mise en forme des lÈgendes
foreach($legend as $key => $value){
    if(strlen($value)>15){
        $lbl = substr($value,0,14).'.';
    }
    else{
        $lbl = str_pad($value, 15 , ' ');
    }
    $legend[$key] = $lbl;
}

// Tabeau des couleurs
$color3 = array('#92DDF3','#5C69AA');

// Tableau des libelles de l'axe des abcisses
$lblAbs = array('01/2008','02/2008','03/2008','04/2008','05/2008','06/2008');

$title = " Temps de reponse des dernieres 24H";
$width = 750;
$height = 500;

insertStatImage(2,$width,$height,$title,$legend,$data3,$color3,$lblAbs,FALSE);

echo'';

?>

8 réponses

Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
14 janv. 2009 à 15:25
Modifie ça
while ($data3 = mysql_fetch_array($repsql) )
{
    echo $data3['moytemps'] ;
    echo "
";
}
En
$aifMoy=array();
while ($data3 = mysql_fetch_array($repsql) )
{
   $aifMoy[]=$data3['moytemps'] ;
}
Puis ça
$data3[] = array(0,9,8,0,5,11,12,11,6,7,9,3,5,1,6,5,8,6);
En
$data3[] = $aifMoy;

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
0
yostudio Messages postés 6 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 26 janvier 2009
14 janv. 2009 à 15:47
Merci pour ta réponse, mais cela ne fonctionne toujours pas.

Artishow n'arrive toujours pas à me créer la courbe avec les chiffre de ma base de donnée.
0
yostudio Messages postés 6 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 26 janvier 2009
14 janv. 2009 à 15:55
Magnifique que du bon, merci beaucoup Teclis01 (Joueur de Warhammer ?) !!!!!

3 jours que je cherche, tu ma sauvé la vie.
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
14 janv. 2009 à 15:56
Ok ajoute ceci et montre moi ce que ça affiche :
Avant ça
$data3[] = $aifMoy;
tu met ceci
print_r($aifMoy);

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
14 janv. 2009 à 16:07
De rien
Mais essaye de comprendre ce que j'ai fait ca te serait encore plus bénéfique
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
0
yostudio Messages postés 6 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 26 janvier 2009
14 janv. 2009 à 16:17
cela affiche :

Array
(
[0] => 6
[1] => 3
[2] => 4
[3] => 2
[4] => 6
[5] => 4
[6] => 4
[7] => 6
[8] => 3
[9] => 5
[10] => 2
[11] => 2
[12] => 2
[13] => 3
[14] => 4
[15] => 6
[16] => 2
[17] => 3
[18] => 5
[19] => 5
[20] => 1
[21] => 6
[22] => 7
)
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
14 janv. 2009 à 16:30
T'façon ça marche je pensais juste que tu avais une valeur genre null ^_^ Mais si ca marche tant mieux :D

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
0
yostudio Messages postés 6 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 26 janvier 2009
14 janv. 2009 à 16:53
Alors maintenant, je souhaite afficher la moyenne de ces temps de réponses, j'ai donc fait :

Mon code :

$moyenne1 = mysql_query("SELECT AVG(moytemps) FROM journee");
$moyenne = mysql_result($moyenne1,0);
$moyenne = (float)($moyenne);
print round($moyenne,2);

Seulement, je ne sais pas comment placer cette valeur dans un array, afin qu'il soit lisible par artishow.
Et cerise sur le gateau, j'aimerai qu'il s'affiche le nombre de fois que j'ai de valeur dans ma base de donnée.

Quelqu'un a une solution ?
0
Rejoignez-nous