Réalisation des graphique avec jpGraph

Résolu
pharelka Messages postés 6 Date d'inscription mardi 29 juillet 2014 Statut Membre Dernière intervention 29 août 2014 - Modifié par pharelka le 29/07/2014 à 18:09
 virtualfrance - 27 sept. 2018 à 09:33
Bonjour à tous,
Je dois faire des graphiques que je mettrais à mon site, mais lorsque j'exécute mon code rien ne s'affiche et j'ai cette erreur(ci-dessous), j'ai crée le dossier tmp pour stocker mes images mais rien ne fonctionne, svp j'ai besoin de vos aides
Cordialement..
Merci...
Erreur:
L'image<<http://localhost/jpgraph/jpgraph.php>>ne peut etre affiché car elle contient des erreurs.

Voici mon code
____________

<?php

include ("../jpgraph/src/jpgraph.php");
include ("../jpgraph/src/jpgraph_bar.php");

define('MYSQL_HOST', 'localhost');
define('MYSQL_USER', 'root');
define('MYSQL_PASS', '');
define('MYSQL_DATABASE', 'graphe');
// ********************************************************************
// PARTIE : Production des données avec Mysql
// ********************************************************************

$sql = <<<EOF
SELECT
YEAR('DTHR_VENTE') AS ANNEE,
COUNT(ID) AS NBR_VENTES
FROM 'ventes'
GROUP BY YEAR('DTHR_VENTE')
EOF;

// Connexion à la BDD
$mysqlCnx = @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) or die('Pb de connxion mysql');

// Sélection de la base de données
@mysql_select_db(MYSQL_DATABASE) or die('Pb de sélection de la base');

// Requête
$mysqlQuery = @mysql_query($sql, $mysqlCnx) or die('Pb de requête');

// Fetch sur chaque enregistrement
while ($row = mysql_fetch_array($mysqlQuery, MYSQL_ASSOC)) {
// Alimentation des tableaux de données
$tableauAnnees[] = 'Année ' . $row['ANNEE'];
$tableauNombreVentes[] = $row['NBR_VENTES'];
}

// *******************
// Création du graphique
// *******************


// Construction du conteneur
// Spécification largeur et hauteur
$graph = new Graph(400,250);

// Réprésentation linéaire
$graph->SetScale("textlin");

// Ajouter une ombre au conteneur
$graph->SetShadow();

// Fixer les marges
$graph->img->SetMargin(40,30,25,40);

// Création du graphique histogramme
$bplot = new BarPlot($tableauNombreVentes);

// Spécification des couleurs des barres
$bplot->SetFillColor(array('red', 'green', 'blue'));
// Une ombre pour chaque barre
$bplot->SetShadow();

// Afficher les valeurs pour chaque barre
$bplot->value->Show();
// Fixer l'aspect de la police
$bplot->value->SetFont(FF_ARIAL,FS_NORMAL,9);
// Modifier le rendu de chaque valeur
$bplot->value->SetFormat('%d sexe');

// Ajouter les barres au conteneur
$graph->Add($bplot);

// Le titre
$graph->title->Set("Graphique 'HISTOGRAMME' : sexe");
$graph->title->SetFont(FF_FONT1,FS_BOLD);

// Titre pour l'axe horizontal(axe x) et vertical (axe y)
$graph->xaxis->title->Set("sexe");
$graph->yaxis->title->Set("Nombre de sexe");

$graph->yaxis->title->SetFont(FF_FONT1,FS_BOLD);
$graph->xaxis->title->SetFont(FF_FONT1,FS_BOLD);

// Légende pour l'axe horizontal
$graph->xaxis->SetTickLabels($tableauAnnees);

?>

6 réponses

jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 344
29 juil. 2014 à 21:58
Bonjour,

Tu as vérifié les droits de tes répertoires ?
Tu as fais des 'print_r' de tes variables pour voir si elles sont bonnes..?
Tu as regardé si l'image se créée bien dans le répertoire et si tu arrivais à l'ouvrir directement ?

Tu as essayé d'écrire ta variable $sql avec des guillemets plutôt que des EOF ?
/*
$sql = <<<EOF
SELECT
YEAR('DTHR_VENTE') AS ANNEE,
COUNT(ID) AS NBR_VENTES
FROM 'ventes'
GROUP BY YEAR('DTHR_VENTE')
EOF;*/

$sql = "SELECT YEAR('DTHR_VENTE') AS ANNEE
                        ,COUNT(ID) AS NBR_VENTES
           FROM 'ventes'
           GROUP BY YEAR('DTHR_VENTE')";




C'est normal que ton "image" porte comme nom :http://localhost/jpgraph/jpgraph.php ???


Il nous manque surement du code... celui qui te sert à afficher l'image entre autre...



0
Rejoignez-nous