cs_samir1988
Messages postés13Date d'inscriptionvendredi 14 mars 2008StatutMembreDernière intervention 1 mai 2008
-
20 mars 2008 à 15:03
cs_samir1988
Messages postés13Date d'inscriptionvendredi 14 mars 2008StatutMembreDernière intervention 1 mai 2008
-
20 mars 2008 à 16:25
Bonjour!!!
Voila je desirerais realiser un graphique en php selon les données inscris dans ma base de données.
Voila la liste de toutes mes tables :
- Table 'temperature' : idtemp , idenceinte , temp , depassement , minute , heure , date , num_enceinte
- Table 'enceinte' : idenceinte , idlocal , num_enceinte , num_capteur , num_local , temp_consigne
- Table 'local' : idlocal , idniveau , num_local , num_niveau , nb_enceinte
- Table 'niveau' : idniveau , num_niveau , nb_local
Comme vous le voyez, chacune des tables contient une clé primaire mais surtout une clé étrangère de la table suivante
J'utilise les clés étrangères parce que concrètement je voudrais , consulter les températures d'une enceinte (une enceinte se trouve dans un local, et un local se situe dans un niveau)
Sur ma page l'utilisateur doit saisir le niveau, le local, l'enceinte , l'heure et une date.
$date_requete = "$annee-$reqmois-$reqjour"; // On construit la variable à envoyer a la requete pour avoir une variable de type Date (MySQL)
$host="localhost";
$bdd="inbp";
$t=mktime(0,0,0,date('h'),date('j'),date('m')); //Donne l'heure, le jour et le mois
for($v=0;$v<24;$v++)
{
$query=mysql_query("SELECT AVG(temp) FROM temperature WHERE heure<".$t."+3600 AND heure>=".$t." AND num_enceinte='$num_enceinte") or die (mysql_error()); //Recupère la moyenne des températures acquise dans l'heure courante
$result=mysql_result($query,0); //Transforme la ressource en un résultat exploitable
$ydata[]=$query; //Stock dans un tableau les valeurs des points en y
$t=$t+3600;
}
$query2=mysql_query("SELECT temp_consigne FROM enceinte,temperature WHERE enceinte.idenceinte = temperature.idenceinte ");
while($result=mysql_fetch_assoc($query2))
{
$ydata2[]=$result['temp']; // Stock les valeurs des points de consignes temperature
}
$graph=new Graph(425,250); //Dimension de l'image en sortie
$grap->SetMarginColor("#fef7e5");
$graph->SetBackgroundImage("blanc.gif",3); //Affichage d'une image derrière le graphique
$graph->SetScale("lin",0,50,0,23); //Type de courbe lineaire Y de 0 à 50 X de 0 à 23 point
$graph->SetY2Scale("lin",0,100,0,100);
$graph->img->SetMargin(60,60,20,70); //Augmente les marges au graphique
$graph->img->SetAntiAliasing("black");
$graph->yaxis->SetColor("blue"); //Couleur des axes
$graph->y2axis->SetColor("red");
$graph->SetShadow(); //Affiche une ombre au graphique
$lineplot=new LinePlot($ydata); //Création des courbes
$lineplot2=new LinePlot($ydata2);
$lineplot->Setcolor("blue"); //Couleur de la courbe n°1
$lineplot->SetWeight(2); //Epaisseur de la courbe n°1
$lineplot2->SetColor("red");
$lineplot2->SetWeight(2);
$lineplot->SetLegend("Temperature de l'enceinte"); //Axe Y1
$lineplot2->SetLegend("Temperature de consigne"); //Axe Y2
$graph->Add($lineplot); //Ajout des courbes au graphique
$graph->Add($lineplot2);
$graph->title->Set("Enceinte ".$_POST['num_enceinte'].""); //Paramétrages des légendes des axes et du titre du graphique
$graph->xaxis->title->Set("Heures");
$graph->yaxis->title->Set("T°C");
$graph->y2axis->SetTitleMargin(-35);
$graph->title->SetFont(FF_FONT1,FS_BOLD); //Mise en forme des différentes légendes
$graph->yaxis->title->SetFont(FF_FONT1,FS_BOLD);
$graph->y2axis->title->SetFont(FF_FONT1,FS_BOLD);
$graph->xaxis->title->SetFont(FF_FONT1,FS_BOLD);
$graph->legend->Pos(0.5,0.5,"right","center"); //Ajuste la position de la légende
$graph->legend->SetLayout(LEGEND_HOR);
$graph->legend->Pos(0.5,0.97,"center","bottom");
$graph->Stroke();
?>
Ce code , je l'ai récuperé dans ancien elève qui avait a peu pré la même mission que moi, et j'ai modifier ce code selon mon cahier des charges.
Tous 1er souci...quand j'execute le code je reçois ceci :
Warning : require_once(./jpgraph14/jpgraph.php) [function.require-once]: failed to open stream: No such file or directory in C:\Program Files\EasyPHP 2.0b1\www\requete_temp.php on line 2
Fatal error: require_once() [function.require]: Failed opening required './jpgraph14/jpgraph.php' (include_path ='.;C:/Program Files/EasyPHP 2.0b1\php5\pear\') in C:\Program Files\EasyPHP 2.0b1\www\requete_temp.php on line 2
Pouvez vous me dire pourquoi? Où puis-je trouver ces fichiers?
cs_samir1988
Messages postés13Date d'inscriptionvendredi 14 mars 2008StatutMembreDernière intervention 1 mai 2008 20 mars 2008 à 15:23
c'est bon j'ai trouvé en ce qui concerne les fichiers jpgraph.php...etc...
Maintenant j'ai une autre erreur...:
Erreur de syntaxe près de ''1' à la ligne 1
cs_samir1988
Messages postés13Date d'inscriptionvendredi 14 mars 2008StatutMembreDernière intervention 1 mai 2008 20 mars 2008 à 16:25
J'ai de nouveau repondu à ma propre question...
Par contre j'ai de nouveau un problème et celui la sa m'etonnerais que je le trouve seul...
Je reçois cette erreur: