Dessinez un graphique dans une boucle php. Travailler avec des graphiques en PHP. Connexion à la base

Dans la plupart des cas représentation graphique les données sont les plus appropriées dans une situation donnée. Si les diagrammes sont aussi interactifs, alors c’est vraiment cool ! Qu'est-ce que je veux dire ? Cliquer sur un élément du diagramme ouvre un autre diagramme.

Que sont les diagrammes connectés ?

Jusqu’à présent, ces diagrammes correspondaient à un seul flux de données et n’étaient pas complètement interconnectés. Et si nous faisions des diagrammes que nous pourrions déplacer d’avant en arrière ? Ces graphiques sont appelés graphiques connectés et font partie du nouveau package FusionCharts 3.2, qui vous permet de créer des graphiques à plusieurs niveaux en extrayant des données à partir d'une source unique. Dans de tels diagrammes, tout est connecté les uns aux autres.

Dans ce didacticiel, nous examinerons l'intégration de tels diagrammes dans un petit projet. Base Données MySQL contiendra les données, PHP agira comme une colle créant Fichier XML, FusionCharts acceptera ce fichier et affichera les données.

Quelques mots sur les schémas connectés :

  • Par défaut, un graphique enfant a le même type d'affichage (par exemple, graphiques à barres) que son parent ;
  • Des paramètres supplémentaires peuvent être ajoutés à n’importe quel niveau de la hiérarchie, y compris le type de graphique lui-même ;
  • Les diagrammes peuvent être placés dans un conteneur HTML, des boîtes de dialogue jQuey, une lightbox, des fenêtres extJS, etc. ;
  • Prise en charge des événements à l'aide de JavaScript ;
Que voulons-nous faire ?

Nous avons souvent été confrontés à la tâche de suivre la croissance des visiteurs de nos sites. Créons donc un petit projet qui affichera le nombre d'utilisateurs enregistrés par mois/jour/heure, ou en d'autres termes, le nombre d'utilisateurs enregistrés sur notre site Web sur une certaine période de temps.

Exigences:

  • Tout serveur Web avec PHP ;
  • Serveur MySQL avec base de données ;
  • FusionCharts, que vous pouvez télécharger ou acheter sur leur site Web ;
Étape 0. Préparation

Créez une base de données vide appelée fctutorialc.

Créez un dossier vide appelé fcdemo à la racine de votre serveur Web (généralement www)

Étape 1 : Préparez la base de données

Pour simplifier les choses, nous n'utiliserons qu'une seule table, users, qui affichera les informations sur les utilisateurs. Nous ne nous intéressons qu'au moment de l'inscription de l'utilisateur. Notre tableau ne contiendra donc que ces informations. Collez ce code dans phpMyAdmin :

CREATE TABLE `users` (`ID` int(10) non signé NOT NULL AUTO_INCREMENT, `Time` timestamp NOT NULL DEFAULT "0000-00-00 00:00:00", PRIMARY KEY (`ID`), KEY `Time` (« Heure »))

Nous avons créé un tableau contenant 2 champs : ID et heure. time contiendra des informations sur l’heure à laquelle l’utilisateur s’est enregistré. Veuillez noter que nous mettons un index sur ce champ car Nous utiliserons de nombreuses conditions WHERE. L'index nous permettra d'accélérer le processus d'échantillonnage.

Connexion à la base

Écrivons un petit script pour nous connecter à la base de données :

Remplacez les paramètres par les vôtres et enregistrez ce fichier sous le nom connect-to-database.php dans le dossier fcdemo.

Insérons des données aléatoires

Si c'était un vrai projet, alors tableau des utilisateurs serait reconstitué au fil du temps, mais pour la démonstration, nous devons insérer quelques données. Écrivons un petit script qui insérera des données aléatoires dans la table. Ne vous inquiétez pas si vous ne comprenez pas code suivant- pour cette leçon, ce n'est pas important.

Enregistrez ce fichier appelé generate-random-data.php dans le même dossier.

Nous incluons d’abord le fichier de connexion à la base de données. Ensuite, nous fixons un délai à partir duquel l'heure d'enregistrement des utilisateurs sera sélectionnée au hasard. Vous pouvez modifier le nombre de lignes à insérer. Pour ce faire, vous devez ajuster la variable $RecordsToInsert.

Ensuite, nous exécutons le script pour insérer les enregistrements générés dans la base de données. Pour démarrer ce processus, accédez à cette adresse - http://localhost/fcdemo/generate-random-data.php.

Finalement, vous devriez voir un message : "Enregistrements insérés ($RecordsToInsert)"

Étape 2. Préparez le squelette du site

Nous devons créer le plus pages simples pour afficher notre graphique. Quelque chose comme ça :

FusionCharts v3.2 - Démo PHP LinkedCharts

Des questions ?

Signaler une faute de frappe

Texte qui sera envoyé à nos rédacteurs :