Comment afficher un graphe de 4 courbes avec "Google Charts" ?

Petit nouveau ! | 7 Messages

09 janv. 2023, 11:54

Bonjour,

Je sollicite votre aide pour établir un graphe de 4 courbes avec "Google Charts" (LineChart)

Je ne suis pas développeur à la base donc c'est compliqué pour moi :D

J'enregistre dans une base de données des valeurs de températures provenant de 2 capteurs DHT22 avec arduino.

En abscisses : les dates
En ordonnées les mesures températures et humidités
La base de données est constituée comme ceci :

id | temperature1 | humidite1 | temperature2 | humidite2 | date

Le code :

Code : Tout sélectionner

<html> <head> <title>test</title> </head> <body> <?php function drawChart() { // Créer un tableau pour stocker les données du graphe $data = array();   // Se connecter à la base de données MySQL $mysqli = new mysqli('localhost', 'user', '******', 'graphe'); if ($mysqli->connect_error) { die('Erreur de connexion (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error); }   // Récupérer les données depuis la base de données MySQL $result = $mysqli->query('SELECT * FROM data');   // Préparer les données pour le graphe array_push($data, array('Date', 'temperature1', 'humidite1', 'temperature2', 'humidite2')); while($row = $result->fetch_array(MYSQLI_ASSOC)) { array_push($data, array(new DateTime($row['date']), $row['value1'], $row['value2'], $row['value3'], $row['value4'])); }   // Créer le graphe $chart = new GoogleCharts(); $chart->load('line', 'chart-container') ->DataTable($data) ->Options(array('title' => 'Mesures')); $chart->render();   // Fermer la connexion à la base de données $mysqli->close(); } ?> </body> </html>
Seulement l'erreur suivante apparait :

Parse error: syntax error, unexpected '$mysqli' (T_VARIABLE) in M:\wamp64\www\graphe\index.php on line 12

sur cette ligne : $mysqli = new mysqli('localhost', 'user', '******', 'graphe');

Je souhaiterai également pouvoir choisir avec une variable le nombre de jour à afficher,

Merci pour votre aide,
Cordialement,
Modifié en dernier par Christophe4646 le 09 janv. 2023, 15:01, modifié 1 fois.

Mammouth du PHP | 1909 Messages

09 janv. 2023, 13:56

Avec ce type d'erreur il faut généralement regardé si la ligne précédentes est bien terminé avec un ;

comme la ligne citée n'est pas la ligne 17 du code donné, regarde ton cade au ligne 16 ou avant.
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

Avatar du membre
Mammouth du PHP | 1242 Messages

09 janv. 2023, 14:05

Si c'est du code copié/collé il se peut qu'il y ai des caractères cachés avant $mysqli, enlever tout ce qui est avant $mysqli pour tester et mettre $data = array(); après la connexion.

Petit nouveau ! | 7 Messages

09 janv. 2023, 15:13

Effectivement des caractères cachés, en faisant DEL il y avait comme des espaces...
Merci !

Bon, par contre j'ai plus d'erreur mais une page vide, le graphe ne s'affiche pas.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9572 Messages

09 janv. 2023, 15:47

Quand tout le reste a échoué, lisez le mode d'emploi...

Avatar du membre
Mammouth du PHP | 1242 Messages

09 janv. 2023, 16:03

Tu dois faire appel à la fonction pour la faire fonctionner.
maFonction();