Probleme d'affichage de graphe avec artichow

slim -  
 yann -
Bonjour,
j'ai essayé d'affiché une image généré avec artichow, mais au retoure je n'ai rien, j'ai utilisé le <img src="mongraphe.php"/> pour intégrer le graphe dans ma page html sans résultat.
En fait moi j'utilise des onglets(TabbedPanels créés par Adobe CS3), le graphe change d'onglet à un autre en principe, quand j'essaie d'intégrer une image quelconque à l'intérieur d'un onglet ça marche, mais pas celle générée avec artichow. J'ai aussi testé d'afficher directement le resultat de mon "mongraphe.php" et ça fonctionne.

13 réponses

slim
 
Bonjour,
tout d'abord je m'excuse pour ne pas avoir été clair au premier post, j'ai oublié de mentionner que le graphe est généré en se basant sur des données d'un formulaire. Le problème devient ainsi plus clair(en tout cas pour moi). Le code pour intégrer un graphe avec artichow est <img src="mongraphe.php"/> ce qui suppose que le script mongraphe.php contient déjà les valeur de mes variables($X et $Y), ce qui n'est pas vrai.
L'idée que j'ai eu est de declarer les variables de la sorte: <img src="mongraphe.php?$X=$_POST['X']&$X=$_POST['Y']">
mais je ne suis pas du tout sur de la syntaxe, je vous prie si vous connaissez comment forcer les variables $X et $Y à prendre les valeurs issues du $_POST de me le communiquer, et merci ;)
0
Ben1812
 
Bonjour,
j'ai le même problème que slim, en clair j'aimerais utiliser des variables que l'utilisateur doit rentrer dans un form que l'on récupère avec un $_POST sur une autre page, pour ensuite afficher le graphe artichow qui doit utiliser ses même variables.
J'ai essayé plusieurs moyens possibles en essayant de passer les variables par la balise <img src> comme l'a décrit slim mais pas moyen que le code qui doit générer le graphe les récupère...
Peut être qu'il est possible d'appeler la page du graphe et de l'afficher sans passer par la balise img?? Si quelqu'un à une idée merci de m'éclairer!
0
slim
 
désolu j'avais résolu le probleme mais j'ai oublié de modifier le statut en résolu, voici la solution:

<img src="mongraphe.php?X=<?php echo "$_POST['X']";?>&Y=<?php echo "$_POST['Y']";?>">

et je récupère les données dans la page mongraphe.php en mettant:
$X=$_GET[X];
$Y=$_GET[Y];
0
Ben1812
 
euh j'ai essayé comme toi mais ça m'affiche une erreur :

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\wamp\www\testbis\graph.php on line 43

je sais pas trop d'où ca pourrait venir...
0
slim > Ben1812
 
elle contient quoi ta ligne 43??
0
Ben1812
 
bon j'ai essayé d'afficher mon graphe par l'intermédiaire d'un form sans passer par la balise img ce qui à priori doit marcher vu que j'ai essayé avec des valeurs prédéfinies, mais dans mon cas je veux récupérer les valeurs avec des $_GET pour les utiliser pour créer le graphe et la j'obtiens l'erreur :

L'image “http://localhost/testbis/graph2.php” ne peut être affichée car elle contient des erreurs.

En fait ma question c'est est il possible d'utiliser des $_GET dans le code du graphe et les utiliser dans cette même page pour le générer et l'afficher?
Et si oui, faut il les mettre avant la fameuse ligne : require_once "Artichow-php5/LinePlot.class.php"; ??
Please help me... :(
0
Ben1812
 
Ma ligne 43 c'est la ligne dont tu parlais dans laquelle j'ai juste modifié le nom des variables :

<img src="graph2.php?distance=<?php echo "$_POST['distance']";?>&value_max=<?php echo "$_POST['value_max']";?>&value_obstacles=<?php echo "$_POST['value_obstacles']";?>">

pour ensuite les récupérer dans graph2.php :
$distance=$_GET[distance];
$value_max=$_GET[value_max];
$value_obstacles=$_GET[value_obstacles];

mais comme dit à la place du graphe j'obtiens l'erreur que je t'ai indiqué...
0
slim
 
pour ajouter une variable dans <img> tu utilise & ou &
0

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

Posez votre question
slim
 
désolé, je vois que ça se traduit autaomatiquement bon au lieu de & utilise " & a m p ; " sans quillemet ni espaces
0
Ben1812
 
j'obtiens la même erreur en remplaçant les & par " & a m p ; " (et j'ai bien compris sans guillemets ni espace je précise!)
0
slim
 
il faut mettre
$distance=$_GET['distance'];
et non $distance=$_GET[distance];
fais attention aux '' ;)
0
Ben1812
 
ah oui tu as raison mais même en changeant cela l'erreur s'affiche toujours...
Et elle dit bien que cela provient de la ligne qui doit passer les variables donc celle ci :

<img src="graph2.php?distance=<?php echo "$_POST['distance']";?>&value_max=<?php echo "$_POST['value_max']";?>&value_obstacles=<?php echo "$_POST['value_obstacles']";?>">

désolé...merci quand même de m'aider et de me donner des conseils! :)
Il ne faut pas alterner les " et ' par hasard? Je commence à être désespéré de ne pas trouver mon erreur!
0
slim
 
oui alterner ' et " change le résultat, par exemple:
$x=test;
echo "$x"; // retourne test
echo '$x'; // retourne $x
je suis désolé de ne pas pouvoir aider, le php c'est comme ça :D il me faut voir le code pour pouvoir "ptetr" trouver l'erreur, si tu veux envoie le code de ton fomulaire, de ta page contenant la balise <img> et celui de ta page graph.php (pas tout le code :D juste les parties qui contiennent les variables :P)
0
Ben1812
 
ok merci si tu veux bien y jeter un coup d'oeil, je t'envoie tout ca :

=> ma partie formulaire :

<form method="post" action="graph.php">

<p>Choice of the base station :
<input type="radio" name="AP" value = "1" />Cisco Aironet 1100
<input type="radio" name="AP" value = "2" />Lynkis
<p>Distance between the computer and the AP (in meter) : <input type="text" name="distance" maxlength="2" size ="5" value="50"/></p>

<p>Number of walls : <input type="text" name="nbwalls" maxlength="2" size ="5" value="1"/></p>

<p>Number of simple doors : <input type="text" name="nbdoors" maxlength="2" size ="5" value="1"/></p>

<p>Number of double doors : <input type="text" name="nbdoubledoors" maxlength="2" size ="5" value="2"/></p>

<p>Number of windows : <input type="text" name="nbwindows" maxlength="2" size ="5" value="1"/></p>
<br></br>
<br></br>

<p><input type = "submit" value="Valider"/></p>

</form>


=> ma partie du fichier graph (la 1ère partie c'est des calculs selon des mesures concernant le Wifi et si je fais un echo d'un résultat obtenu il affiche bien la valeur...) :

<?php
$AP = $_POST['AP'];
if($AP == 1) {
$value_max = -25.7;
$wall_att = 31.75;
$door_att = 9.25;
$doubledoor_att = 5.5;
$window_att = 20.75;
}
else { $value_max = -22.7;
$wall_att = 26.5;
$door_att = 10.75;
$doubledoor_att = 7.5;
$window_att = 21;
}
$value_obstacles = $_POST['nbwalls'] * $wall_att + $_POST['nbdoors'] * $door_att + $_POST['nbdoubledoors'] * $doubledoor_att + $_POST['nbwindows'] * $window_att ;
$distance = $_POST['distance'];
?>

<img src="graph_code.php?distance=<?php echo "$_POST['distance']";?>&value_max=<?php echo "$_POST['value_max']";?>&value_obstacles=<?php echo "$_POST['value_obstacles']";?>">


=> et enfin les récupération des variables dans graph_code.php :

$distance = $_GET['distance'];
$value_max = $_GET['value_max'];
$value_obstacles = $_GET['value_obstacles'];


Concernant la partie Artichow, si je remplace les $_GET par des entiers cela fonctionne donc le code est correct.
Voila je crois que j'ai tout mis enfin tout ce qui pourrait être source d'erreur...
0
slim
 
essaie d'enlever les guiellemets qui entoure le $_POST,(celui de la balise image), ds mes script moi je l'utilise pas. C ptetr le bleme, et à premiere vue ton code est correcte.
0
Ben1812
 
bon le graphe ne s'affiche toujours pas mais je n'ai plus d'erreur c'est déjà ça!
J'ai encore essayé de mettre les GET du fichier graph_code.php avant la ligne "require once..." au cas ou mais pas de changement.
Plus d'idée... :(
0
Ben1812
 
aaahhhh ca marche!!!
Après moult tentatives j'ai réussi à afficher ce ... de graphe! J'ai juste modifié la ligne avec la balise img par :

<img src='graph_code.php?distance=<?php echo "$distance"; ?>&value_max=<?php echo "$value_max"; ?>&value_obstacles=<?php echo "$value_obstacles"; ?>' />

Oui en fait c'est pas la peine d'utiliser des POST pour passer les variables d'une page à l'autre il suffit de mettre des echo "$variable"; en paramètre et de les récupérer avec des GET.

Encore merci pour ton aide et ta persévérance slim ;)
0
yann
 
Euhh bonjour,

ta solution ne marche pas pour passer un array !
Quelqu'un t il une idée ?

je seche... je n'y arrive pas en post get !
0