IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

Tableau, graphes, cgi


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 747
    Par défaut Tableau, graphes, cgi
    Bonsoir,

    je suis en train de faire modifier un programme existant mais j'ai quelques soucis pour parvenir à mes fins ...
    Actuellement dans un fichier .pl , j'ai le bout de code suivant pour l'affichage d'un graphique (camembert)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    } elsif (defined($type) && length($type) && ($type eq 'pie')) {
        my ($width, $height) = (250, 250);
        my ($color1, $color2, $color3, $color4) = ("green", "orange", "lgray", "red");
        _make_pie($title_pie, $width, $height, $valide, 
                  $invalide, $attente, $retournee, 
                  $color1, $color2, $color3, $color4);
    }
    et le code pour le graphe est (je ne mets pas tout car très long)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    # _make_pie
    sub _make_pie {
        my ($title, $width, $height, $data1, $data2, $data3, $data4, $color1, $color2, $color3, $color4) = @_;
     
        #[...]
     
    	binmode STDOUT;
    	print $gd->png;
        }
    }
    Le fichier cgi qui affichait le camembert qui avait été crée.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <br>
            <center><img src="graph.cgi?type=pie"></center>
    	<br />
    	<table>
    		<tr>
    			<td><table border="0" bgcolor="#000000" cellpadding="1"><tr><td bgcolor="#00BF00" width="20">&nbsp;</td></tr></table></td>
    			<td>Total valides</td>
    			<td>&nbsp;&nbsp;&nbsp;</td>
    			<td><table border="0" bgcolor="#000000" cellpadding="1"><tr><td bgcolor="#0000BF" width="20">&nbsp;</td></tr></table></td>
    			<td>Total invalides</td>
    [...]
    Comme il me faut maintenant afficher n graphes (dans mon cas, c'est 4 graphes), j'ai stocké les différents graphes dans un tableau :
    qui contient des références vers les graphes qui ont été crées.
    Ce tableau a été crée dans le fichier .pl

    Ce que je voudrais savoir, c'est comment faire dans le fichier .cgi pour afficher mes n camemberts à l'écran ?

    Merci

  2. #2
    Membre chevronné
    Avatar de Schmorgluck
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2006
    Messages : 371
    Par défaut
    Déjà, ton fichier CGI n'est pas un fichier CGI, c'est un fichier HTML (et pas aux normes, en plus), alors c'est pas évident avec les infos que tu nous donnes.

    Mais bon, je vais t'expliquer le principe de la génération d'images dynamiques en programmation web côté serveur. L'idée c'est d'utiliser un script comme un fichier image, en en plaçant l'url dans une balise img, avec éventuellement des paramètres en GET qui influenceront l'image obtenue. Le script en question doit donc générer une image, être une image en quelque sorte, c'est à dire qu'il renvoie l'image en question en sortie, ni plus, ni moins.

    Alors dans ton cas, on va dire que ton script affichant un graphe s'appelle graph.cgi, et que tu dois lui passer deux paramètres, type, indiquant le type de graphe voulu (camembert, barres, etc.), et data, indiquant quelles données tu veux voir représentées. Ça donne dans ton fichier HTML une balise ressemblant à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="graph.cgi?type=pie&data=1" />
    Qui indique que tu veux afficher un camembert représentant tes données numérotées 1. Ç'aurait pu être
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="graph.cgi?type=pie&data=OS" />
    par exemple, pour un graphe représentant les statistiques des différents OS se connectant au site.

    Voilà, j'espère que ça t'aura aidé.

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 747
    Par défaut
    Citation Envoyé par Schmorgluck Voir le message
    Déjà, ton fichier CGI n'est pas un fichier CGI, c'est un fichier HTML (et pas aux normes, en plus), alors c'est pas évident avec les infos que tu nous donnes.

    Mais bon, je vais t'expliquer le principe de la génération d'images dynamiques en programmation web côté serveur. L'idée c'est d'utiliser un script comme un fichier image, en en plaçant l'url dans une balise img, avec éventuellement des paramètres en GET qui influenceront l'image obtenue. Le script en question doit donc générer une image, être une image en quelque sorte, c'est à dire qu'il renvoie l'image en question en sortie, ni plus, ni moins.

    Alors dans ton cas, on va dire que ton script affichant un graphe s'appelle graph.cgi, et que tu dois lui passer deux paramètres, type, indiquant le type de graphe voulu (camembert, barres, etc.), et data, indiquant quelles données tu veux voir représentées. Ça donne dans ton fichier HTML une balise ressemblant à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="graph.cgi?type=pie&data=1" />
    Qui indique que tu veux afficher un camembert représentant tes données numérotées 1. Ç'aurait pu être
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="graph.cgi?type=pie&data=OS" />
    par exemple, pour un graphe représentant les statistiques des différents OS se connectant au site.

    Voilà, j'espère que ça t'aura aidé.
    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/05/2007, 17h04
  2. Section avec tableau et graphe
    Par frederic_s dans le forum Deski
    Réponses: 12
    Dernier message: 26/12/2006, 15h34
  3. Tableau et graphe l'un au dessus de l'autre en format paysage ?
    Par flaxseed dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 3
    Dernier message: 24/08/2006, 23h09
  4. Réponses: 2
    Dernier message: 05/04/2006, 11h59
  5. [web] cgi dbi MySQL : créer un tableau ?
    Par toctof dans le forum Web
    Réponses: 7
    Dernier message: 03/12/2004, 09h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo