Bonjour à tous,

Je démarre sur ce langage donc pardonnez-moi de mon incompétence .

Je voudrai afficher un graphique HIGHCHART sur une page en fonction de données dans une base Mysql j'ai créé un index pour sélectionner un format de données et lancer un fichier php avec un sql

Code html : 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
<!DOCTYPE html>
<html lang="en" >
    <head>
        <meta charset="utf-8" />
        <meta name="author" content="Script Tutorials" />
        <title>Prix Moyens</title>
 
        <!-- add styles -->
        <link href="css/main.css" rel="stylesheet" type="text/css" />
 
        <!-- add scripts -->
        <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
        <script src="js/highcharts.js"></script>
        <script src="js/gray.js"></script>
        <script src="js/main.js"></script>
		<!-- <script src="datas.js"></script> -->
 
    </head>
		choix du format : <br>
		<form method="POST" action="datas.php">
		<form method="POST">
		<select name="format">
			<option value="A">A</option>
			<option value="B">B</option>
			<option value="C">C</option>
 
		</select>
		<input type="submit" value="Afficher"/>
 
        <!-- Affichage chart -->
        <div id="chart_1" class="chart"></div>

fichier datas.php avec le SQL en fonction de la valeur de mon format sélectionné en amont :

Code php : 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
<?php
$dsn = 'mysql:dbname=test;host=localhost';
$user = '';
$password = '';
$i=0;
 
$dbh = new PDO($dsn, $user, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
$abs_ar = Array();
$ord_ar = Array();
global $abs_ar;
global $ord_ar;
 
$strsql = $dbh->query("SELECT OFFSET_PRIX_MOYEN, NB_TRANS FROM sigma_av_datas_pm WHERE FORMAT = '".$_POST['format']."' ");
 
foreach ($strsql as $row)
{
	$ord_ar[] = $row[1];
	$abs_ar[] = $row[0];
	$i=$i+1;
}
 
echo json_encode($ord_ar);
?>

echo json_encode($ord_ar); me retourne bien le tableau à afficher sur mon graphique.

et le fichier main.js avec la fonction de mon chart :

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
// definition graphique
var chart1;
 
$(document).ready(function() {
 
    // premier chart nombre transactions
    chart1 = new Highcharts.Chart({
     chart: {
        renderTo: 'chart_1',
        type: 'column',
        height: 350,
     },
     title: {
        text: 'Nb Trans'
     },
	 colors:
		['#910000']
	 ,
     xAxis: {
        categories: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21']
	//categories: <?php json_encode($abs_ar); ?>
     },
     yAxis: {
        title: {
           text: 'Nb Trans'
        }
     },
     series: [{
        name: 'Prix moyen',
        data: [4, 1, 0, 0, 3, 3, 4, 5, 6, 4, 7, 8, 13, 9, 10, 5, 4, 2, 0, 1]
	//data: <?php json_encode($abs_ar); ?>
 
     }]
    });
});
Dans l'exemple le graphique affiché n'a pas de variable je voudrai lui donner les deux variables $ord_ar[] et $abs_ar[] que j'ai calculé dans le fichier php.

J'ai essayé d'utiliser ça :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
categories: <?php json_encode($abs_ar); ?>

mais ça ne fonctionne pas en fait je ne sais plus trop où je vais et je m'y perd entre les fichiers et je ne sais pas comment faire interagir les données entre eux...

dans contribuez j'ai vu ce topic :
http://www.developpez.net/forums/d10...cript-methode/
est-ce la solution?

Merci d'avance pour vos précieux éclaircissements!