Mon histogramme ne s'affiche pas
Je suis entrain de créer une application qui permettrait à un utilisateur connecté d'affiche ses activités en tableaux par recherche en semaine, mois, année, les afficher en histogramme, le souci est que je récupère les données(designation, nbaffaire et année) de ma table(taches: id,designation,nbaffaire,annee),afficher dans un tableau, et j'ai créé deux tableau pour recevoir les ces données et voici
$tableau_annee[]=array();
$tableau_affaire[]=array();
l'erreur est la suivante:
Fatal error: Call to a member function fetch() on a non-object in C:\wamp\www\cnps\models\fonction\graphe.php on line 18
Le code
<?php
include_once('../../lib/jpgraph/src/jpgraph.php"');
include_once('../../lib/jpgraph/src/jpgraph_log.php');
include_once('../../lib/jpgraph/src/jpgraph_bar.php"');
// tableaux destinés a recevoir les valeurs de la table de la bdd
$tableau_annee[] = array();
$tableau_affaire[] = array();
// Recuperation des données de la bdd
$bdd = new PDO('mysql:host=localhost;dbname=gestionalertes','root','Geth@lex/007');
$requete1 = 'SELECT COUNT(id) AS NB_AFFAIRE,annee AS ANNEE FROM taches';
$requete_exe = $bdd->query($requete1);
//$requete_exe->execute();
while($rows = $requete1->fetch() > 0){
$tableau_annee[] = 'ANNEE'.$rows['annee'];
$tableau_affaire[] = 'NB_AFFAIRE'.$rows['nbaffaire'];
}
//**********************************************************
// CONSTRUCTIONS DE GRAPHIQUES //
//**********************************************************
// --- Creation du conteneur graphique ---//
$graph = Graph(400,600);
$graph->SetScale("txtlin");
// --- Definir les titres et etiquettes ---//
$graph->title->Set("Táches annuelles");
$graph->yaxis->SetTitle("Evolution annuelle");
$graph->xaxis->SetTitle("annee");
$graph->xaxis->SetTickLabels($tableau_anne[]);
// --- Tracé du graphe --- //
$histogram=new LinePlot($tableau_affaire[]);
$histogram->SetColor("blue");
$histogram->SetLegend("Production annuelle Utilisateur");
// --- Ajout du tracé au conteneur --- //
$graph = add($histogram);
// --- Envoie du graph au navigateur --- //
$graph->Stroke();
Que vous m'aidiez a m'en sortir
Réponses apportées à cette discussion
Salut,
est-ce que par hasard la ligne
$graph = Graph(400,600);
ne devrait pas être :
$graph = new Graph(400,600);
?
Ce n'est pas new Graph(400,500) le bleme parce qu'il affiche l'entete du tableau mais pas son contenu.
Et en regardant ce que dit le message d'erreur, ça donne quoi ?
Par exemple, en regardant cette ligne :
while($rows = $requete1->fetch()
En regardant en suite une ligne juste avant :
$requete_exe = $bdd->query($requete1);
On peut rapidement voir qu'il y a un problème. Ça, c'est une erreur d'inattention et l'emploi de la mauvaise variable.