Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Images > JpGraph
JpGraph Forum d'entraide pour la bibliothèque JpGraph permettant de manipuler des images en PHP. Avant de poster -> tutoriels JpGraph
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/12/2007, 20h03   #1
Membre régulier
 
Inscription : octobre 2007
Messages : 251
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : octobre 2007
Messages : 251
Points : 87
Points : 87
Par défaut [JpGraph] Le graphe généré contient des erreurs

Bonjour à tous, j'espère que le père noël vous a gatté,

Voici mon trivial pb :
Citation:
L'image “http://127.0.0.1/mes_stats.php” ne peut être affichée car elle contient des erreurs ...


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
<html>
<body>
<?php 
include('../jpgraph-2.3/src/jpgraph.php'); 
include('../jpgraph-2.3/src/jpgraph_line.php'); 
 
// CREATION DU GRAPHIQUE
$graph = new Graph(200,150);
$graph->title->set('Les stats du mois');
$graph->subtitle->set('sous titre');
$graph->SetScale("textlin");
 
$ydata = array(3,4,5,6);
 
$lineplot = new LinePlot($ydata);
$graph->Add($lineplot);
$graph->Stroke();
?>
</body>
</html>
Dès que j'enlève les balises <html><body> et </body></html> ça fonctionne mais bon, je dois quand même inclure mon graph dans une page moi

Merci à tous et bonnes fêtes de fin d'année (je dois vous avouer que j'espèrerais vous avoir d'ici là )
popovitch130 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2007, 20h55   #2
Rédacteur
 
Avatar de RideKick
 
Homme
Directeur technique
Inscription : septembre 2006
Messages : 5 959
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Directeur technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : septembre 2006
Messages : 5 959
Points : 10 889
Points : 10 889
Normal , le script jpGraph ne renvoi pas une page html mais une image donc les balises html dans ton fichiers n'ont rien a y faire ....

Citation:
Envoyé par popovitch130 Voir le message
Dès que j'enlève les balises <html><body> et </body></html> ça fonctionne mais bon, je dois quand même inclure mon graph dans une page moi
De plus si tu inclus le graph dans une page ça veut dire que tu vas te retrouver 2 fois avec les balises html et body .....
__________________
Pas de questions techniques en MP please

Mon site perso
RideKick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2007, 21h41   #3
Membre régulier
 
Inscription : octobre 2007
Messages : 251
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : octobre 2007
Messages : 251
Points : 87
Points : 87
Mais alors si je veux que mon utilisateur choisisse une option et que le graph se mette à jour dynamiquement dans la page je fais comment ? Il faut une page pour afficher le choix et une page afficher pour le graph ? on peut passer par une iframe peut-être ?
popovitch130 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2007, 21h47   #4
Rédacteur
 
Avatar de RideKick
 
Homme
Directeur technique
Inscription : septembre 2006
Messages : 5 959
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Directeur technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : septembre 2006
Messages : 5 959
Points : 10 889
Points : 10 889
Enleve simplement les balises html .....
__________________
Pas de questions techniques en MP please

Mon site perso
RideKick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2007, 22h08   #5
Membre régulier
 
Inscription : octobre 2007
Messages : 251
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : octobre 2007
Messages : 251
Points : 87
Points : 87
merci
popovitch130 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2007, 22h17   #6
Membre régulier
 
Inscription : octobre 2007
Messages : 251
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : octobre 2007
Messages : 251
Points : 87
Points : 87
En fait je dois récupérer des données MySQL via PHP, générer une liste de choix (<form><select><option1><option>2 ...).
Et AJAX met à jour mon graph selon le choix de l'utilisateur dans la liste de choix.

Ce que tu me dis en fait c'est de générer tout en php si j'ai bien compris ?

je vois pas comment ça peut marcher ... (désolé d'être si insistant)

Si dès que j'instancie un objet Graph, il me génére une balise html, comment je fait pour mettre mes balises :
<form><select><option1><option2> pour mon formulaire,
<script> pour faire tourner javascript etc.
popovitch130 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2007, 22h28   #7
Rédacteur
 
Avatar de RideKick
 
Homme
Directeur technique
Inscription : septembre 2006
Messages : 5 959
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Directeur technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : septembre 2006
Messages : 5 959
Points : 10 889
Points : 10 889
Un peu d'aide alors : Tuto JPGraph
__________________
Pas de questions techniques en MP please

Mon site perso
RideKick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2007, 23h42   #8
Membre régulier
 
Inscription : octobre 2007
Messages : 251
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : octobre 2007
Messages : 251
Points : 87
Points : 87
Je pense avoir compris comment on instancie un objet de la classe Graph en revanche, comme dit dans la conclusion du tuto le plus dur et de trouver la structure qui contient le graph ... c'est en ce sens que j'ai besoin de vous :

Je voudrais juste faire une page de stats HTML sur la base d'une liste de critères (provenant d'une table MySQL) et le graph qui se met à jour en fonction des critères cliqués.

On peut passer en paramètres les critères et instancier le graph via une balise img :
Code :
<img src=pagePHP?critere1=valeurCritere1>
PB je n'arrive décidemment pas à la mettre en place correctement, une icone d'image s'affiche mais le graph ne s'affiche pas

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
<?php incude('connect.php');
// ça c'est mon menu de navigation
require_once("menu.php");
?>
 
<html>
<head>
<title>Stats</title>
</head>
<body>
 
<form action="graphSQL.php" method="post" name="add">
 <table width="350" border="0" align="center" cellpadding="5" cellspacing="0">
  <tr><td>Veuiller s&eacute;lectionner un restaurant dans la liste ci-dessous</td></tr>
  <tr><td colspan="2">
  	<select name="listCritere" id="listCritere" size="5">
	<option value="Critere1">Novice</option>
    <option value="Critere2">Advanced</option>
    <option value="Critere3">Expert</option>
    </select>
    </td>
  </tr>
  <tr><td>
 
<img src="graphSQL.php" width="240" height="240" />
 
 </td></tr>
  </table>
  </form>
</body>
</html>


GraphSQL.php
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<?php 
include('../jpgraph-2.3/src/jpgraph.php');
include('../jpgraph-2.3/src/jpgraph_line.php');
// CREATION DU GRAPHIQUE
$graph = new Graph(200,150);
$graph->title->set('Perfs');
$graph->SetScale("textlin");
//PAS D ACCES BDD POUR L INSTANT JE TESTE ...
$ydata = array(3,4,5,6);
$lineplot = new LinePlot($ydata);
$graph->Add($lineplot);
$graph->Stroke();
?>
popovitch130 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2007, 07h23   #9
Membre Expert
 
Avatar de eric.pommereau
 
Homme ERIC POMMEREAU
Ingénieur intégration
Inscription : décembre 2004
Messages : 683
Détails du profil
Informations personnelles :
Nom : Homme ERIC POMMEREAU
Âge : 38
Localisation : France

Informations professionnelles :
Activité : Ingénieur intégration
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : décembre 2004
Messages : 683
Points : 1 294
Points : 1 294
Bonjour,

Dans ton cas on pourrait faire 3 fichiers PHP:

Une page qui présente le formulaire,

Une autre page qui récupère et traite les données de ton formulaire (paramètres url et accès BDD) et fait appel par le biais ddu code suivant
Code :
<img src="imageJpGraph.php?param=1..." />
Enfin la page de production du graphique qui s'occupe uniquement de la mise en oeuvre du graphique.

A savoir que si cette méthode ne te plait pas tu peux également créer l'image dans le second script, et l'enregistrer sur disque avec la méthode
Code :
Stroke('nomImage.jpg');
..et l'afficher en suivant dans le même script .

Si ton code ne marche pas au dessus c'est a mon avis un problème de casse (majuscules/minuscule) du nom de ton script:

GraphSQL.php
graphSQL.php

Quand tu procède ainsi et que ton script ne s'affiche pas, je te conseille de regarder systématiquement le code source de la page générée, cela t'affichera les warnings ou erreurs.


Voilà

@ +
eric.pommereau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2007, 10h49   #10
Membre régulier
 
Inscription : octobre 2007
Messages : 251
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : octobre 2007
Messages : 251
Points : 87
Points : 87
Super ! Merci beaucoup
popovitch130 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h58.


 
 
 
 
Partenaires

Hébergement Web