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

Bibliothèques et frameworks PHP Discussion :

[Artichow] Construction d'un camembert


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    829
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 829
    Par défaut [Artichow] Construction d'un camembert
    Bonjour à tous, j'ai installé artichow sur mon serveur linux et j'ai testé un de vos exemple et cela fonctionne.

    J'ai essayer de le mettre en pratique en recuperant des donnée de ma base mysql et ca bug.


    voila ce qui apparait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Warning: Cannot modify header information - headers already sent by (output started at /var/www/qualite/v0.1a/stats2.php:21) in /var/www/qualite/v0.1a/Artichow/php5/Image.class.php on line 582
    ‰PNG  ��� IHDR�����Z���Ù—ý�
    �™IDAT8íy$Õ}ç/¯ªÊ:»ú>¦çh†Ã0Â#.I`d@+lc…*p�Ëj±v½²,Ë2ƁX²7t86¬Å²vƒ`k„±d$
    Ns-Œf˜FÌÐ3Ýsu÷ô]]WfåýöW••™••]Ý Ýí÷‰ŽŠ¬WïýÞ/³+¿õ{¿|ùa ,˜N ea>h( %,T°(Êš …BY3PÁ¢P(k*X eÍ@‹B¡¬¨`Q(5ÃÊÆÍg$…©C¡P(8Ÿ2§Ž ÔšÔ®C¡PÖ&ÊüüÌ‘ƒ3‡Î>Xæa¶,lز,Ã`!sчÛw\Ö¶ýÒöK/KoÙÆ°ìŠº„ÜAŽSƒšêÑRk]Š)kœ¹w¾¸ŸˆTñÌð
    §„x¼©*XË ,ʪAžùÅí7“;¸(ÓÛo†AñÉdº·7d`ufüì 
     
    ............................

    voici ma page qui execute le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
     
    <?php
    $mois = isset($_POST['mois'])?$_POST['mois']:null;
    $annee = isset($_POST['annee'])?$_POST['annee']:null;
     
    $server="****";
    $user="****";
    $pass="*****";
    $db="*****";
    mysql_connect($server,$user,$pass) or die('erreur de connexion');
    mysql_select_db($db) or die ('impossible de se connecter a la base');
    $sql1="SELECT count( id_reclamation ) as reclamation
    FROM reclamation
    WHERE MONTH( date_reclamation ) = '$mois'
    AND YEAR( date_reclamation ) = '$annee';";
     
    $query1 = mysql_query($sql1) or die('Erreur SQL !'.$sql1.'<br>'.mysql_error());
    //mysql_num_rows($query1);
    echo 'Pour le mois de '.$mois.'/'.$annee.', nous avons ';
    while ( $list3 = mysql_fetch_array( $query1 ) ) { echo $list3["reclamation"];}
    echo ' XXXX Réclamations.';
     
    echo '<SELECT name="id_critere" onchange="critere()">';
    $sql2="SELECT id_critere, nom_critere FROM critere;";
    $query2 = mysql_query($sql2) or die('Erreur SQL !'.$sql2.'<br>'.mysql_error());
    echo '<option value="-1"> Faite votre Choix</option>';
    while ($list4 = mysql_fetch_array($query2))
    {
    echo '<option value='.$list4["id_critere"].'">'.$list4["nom_critere"].'</option>';
    }
    echo '</SELECT>';
    require_once('Artichow/Pie.class.php');
     
    $graph = new Graph(450, 280);
     
    $graph->shadow->setPosition(Shadow::RIGHT_BOTTOM);
    $graph->shadow->setSize(4);
     
    $graph->setBackgroundGradient(
    	new LinearGradient(
    		new Color(240, 240, 240, 0),
    		new White,
    		0
    	)
    );
     
    $sql3="SELECT id_critere, nom_critere FROM critere;";
    $query3 = mysql_query($sql3) or die('Erreur SQL !'.$sql3.'<br>'.mysql_error());
     
    $ServArray = array ();
    while($servicetab= mysql_fetch_array($query3)) {
    $ServArray[$servicetab['id_critere']][0] = $servicetab['id_critere'];
    $ServArray[$servicetab['id_critere']][1] = $servicetab['nom_critere'];
    }
     
    $genres = array();
    while($servicetab2= mysql_fetch_array($query3)) {
    $genres[$servicetab2['nom_critere']][0] = $servicetab2['id_critere'];
    $genres[$servicetab2['nom_critere']][1] = $servicetab2['nom_critere'];
    }
    ;
    foreach ($ServArray as $key => $val)
    {
    $sql4="SELECT count( id_eva_reclamation ) as total, nom_critere
    FROM eva_reclamation
    INNER JOIN critere ON critere.id_critere=eva_reclamation.id_critere
    INNER JOIN reclamation ON eva_reclamation.id_reclamation=reclamation.id_reclamation
    WHERE MONTH( date_reclamation ) = '$mois'
    AND YEAR( date_reclamation ) = '$annee'
    AND critere.id_critere IN($key) GROUP by nom_critere;";
    $query4 = mysql_query($sql4) or die('Erreur SQL !'.$sql4.'<br>'.mysql_error());
    while($ligne = mysql_fetch_assoc($query4)){
     
    echo '<br>'.$ligne["nom_critere"].'==>'.$ligne["eva_reclamation"].'<br>';
    }
    }
    ////////////////
     
     
    $pie = new Pie(array_values($genres));
     
    $pie->setLabelPrecision(1);
     
    $pie->setLegend(array_keys($genres));
    $pie->legend->setPosition(1.45, .25);
     
    $pie->setCenter(.36, .58);
     
    $pie->setSize(.65, .65);
     
    $pie->set3D(5);
     
    $pie->title->set('Popularité pour le mois juin');
    $pie->title->move(0, -40);
    $pie->title->setFont(new TuffyBold(14));
    $pie->title->setBackgroundColor(new White(50));
    $pie->title->setPadding(5, 5, 2, 2);
    $pie->title->border->setColor(new Black());
     
    $graph->add($pie);
     
    $graph->draw();
    Je pense m'être tombé dans la création du tableau array ? non ?
    Ou est mon erreur ?
    Merci d'avance

    guigui69

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ca ne marche pas comme ca, il faut lire la doc monsieur
    http://www.artichow.org/base/Page
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    829
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 829
    Par défaut
    D'accord mais se qui est bizarre c'est que dans leur exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
    ?php
     
    require_once('artichow/Pie.class.php');
     
    $graph = new Graph(450, 280);
     
    $graph->shadow->setPosition(Shadow::RIGHT_BOTTOM);
    $graph->shadow->setSize(4);
     
    $graph->setBackgroundGradient(
    	new LinearGradient(
    		new Color(240, 240, 240, 0),
    		new White,
    		0
    	)
    );
     
    $genres = array(
    	'Action'		=> 28,
    	'Policier'		=> 14,
    	'Aventure'		=> 20,
    	'Romance'		=> 8,
    	'Drame'			=> 3,
    	'Science-Fiction'	=> 17,
    );
     
    $pie = new Pie(array_values($genres));
     
    $pie->setLabelPrecision(1);
     
    $pie->setLegend(array_keys($genres));
    $pie->legend->setPosition(1.45, .25);
     
    $pie->setCenter(.36, .58);
     
    $pie->setSize(.65, .65);
     
    $pie->set3D(5);
     
    $pie->title->set('Popularité pour le mois juin');
    $pie->title->move(0, -40);
    $pie->title->setFont(new TuffyBold(14));
    $pie->title->setBackgroundColor(new White(50));
    $pie->title->setPadding(5, 5, 2, 2);
    $pie->title->border->setColor(new Black());
     
    $graph->add($pie);
     
    $graph->draw();
     
    ?>
    On arrive a voir le graphique, pourquoi je ne peut arriver avec mon code étant donner que je créer le tableau array (genres).

    Merci

    guigui69

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Parce que tu ne peux pas avoir en meme temps le flux de ta page html et le flux de ton graphique.

    Il faut appeller le graphique dans une balise <img> s'il doit etre intégré à du code html.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    829
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 829
    Par défaut
    D'accord,

    Comment je doit faire pour afficher le graphique sur ma page désirer.


    Ma requête récupérer le nombre de réclamation pour chaque critère. et je voudrait les afficher sur cette page sur forme d'un camembert.

    Merci

    guigui69

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Quelle est ta difficulté ?
    Par rapport a ce que tu as fais, il faut juste séparer la création du graphique dans une autre page.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. [XL-2010] Construction d'un graphique au format camembert
    Par shakapouet dans le forum Excel
    Réponses: 5
    Dernier message: 31/07/2012, 10h50
  2. [Artichow] Afficher un camembert
    Par Sh4dow49 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 10/09/2008, 11h45
  3. [ARTICHOW] Légendes et couleurs d'un graphe camembert
    Par L'aigle de Carthage dans le forum Langage
    Réponses: 10
    Dernier message: 09/05/2008, 17h29
  4. [Artichow] Problème au niveau des camemberts
    Par Sekigawa dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 18/04/2008, 10h22
  5. [JBuilder 7] Construction d'executable natif
    Par renaudfaucon dans le forum JBuilder
    Réponses: 3
    Dernier message: 24/11/2006, 22h28

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