Grafy kreslíme z php log súboru. WA recenzie

Vo väčšine prípadov je v danej situácii najvhodnejšie grafické znázornenie údajov. Ak sú diagramy aj interaktívne, potom je to naozaj skvelé! To, čo mám na mysli? Kliknutím na prvok diagramu sa otvorí ďalší diagram.

Čo sú pripojené diagramy?

Až do tohto bodu takéto diagramy zodpovedali iba jednému dátovému toku a neboli úplne prepojené. Čo keby sme vytvorili diagramy, ktoré by sme mohli posúvať tam a späť? Tieto grafy sa nazývajú spojené grafy a sú súčasťou nového balíka FusionCharts 3.2, ktorý vám umožňuje vytvárať viacúrovňové grafy extrahovaním údajov z jedného zdroja. V takýchto diagramoch je všetko navzájom prepojené.

V tomto návode sa pozrieme na integráciu takýchto diagramov do malého projektu. Základňa údaje MySQL bude obsahovať dáta, PHP bude fungovať ako lepidlo na vytvorenie XML súbor, FusionCharts prijme tento súbor a vypíše údaje.

Niekoľko slov o pripojených diagramoch:

  • V predvolenom nastavení má podradený graf rovnaký typ zobrazenia (napríklad stĺpcové grafy) ako jeho nadradený;
  • Ďalšie nastavenia je možné pridať na ľubovoľnej úrovni hierarchie vrátane samotného typu grafu;
  • Diagramy môžu byť umiestnené v HTML kontajneri, jQuey dialógoch, lightboxe, extJS oknách atď.;
  • Podpora udalostí pomocou JavaScriptu;
čo chceme robiť?

Mnohokrát sme stáli pred úlohou sledovať rast návštevnosti našich stránok. Poďme si teda vytvoriť malý projekt, ktorý bude ukazovať počet registrovaných užívateľov za mesiac/deň/hodinu, alebo inak povedané, počet užívateľov registrovaných na našej stránke za určité časové obdobie.

Požiadavky:

  • Akýkoľvek webový server s PHP;
  • MySQL server s databázou;
  • FusionCharts, ktoré si môžete stiahnuť alebo zakúpiť z ich webovej stránky;
Krok 0. Príprava

Vytvorte prázdnu databázu s názvom fctutorialc.

Vytvorte prázdny priečinok s názvom fcdemo v koreňovom adresári vášho webového servera (zvyčajne www)

Krok 1: Pripravte databázu

Aby sme veci zjednodušili, použijeme iba jednu tabuľku používateľov, ktorá bude zobrazovať informácie o používateľovi. Zaujíma nás len čas registrácie užívateľa. Naša tabuľka teda bude obsahovať iba tieto informácie. Vložte tento kód do phpMyAdmin:

CREATE TABLE `users` (`ID` int(10) unsigned NOT NULL AUTO_INCREMENT, `Time` time stamp NOT NULL DEFAULT "0000-00-00 00:00:00", PRIMARY KEY (`ID`), KEY `Time` ("Čas"))

Vytvorili sme tabuľku obsahujúcu 2 polia: ID a čas. time bude obsahovať informáciu o čase, kedy sa používateľ zaregistroval. Upozorňujeme, že do tohto poľa sme umiestnili index, pretože Využijeme veľa podmienok WHERE. Index nám umožní urýchliť proces vzorkovania.

Pripojenie k základni

Napíšeme malý skript na pripojenie k databáze:

Nahraďte nastavenia vlastnými a uložte tento súbor pod názvom connect-to-database.php v priečinku fcdemo.

Vložíme náhodné údaje

Ak by to bol skutočný projekt, tabuľka používateľov by sa časom zväčšila, ale kvôli demonštrácii musíme vložiť nejaké údaje. Napíšeme si malý skript, ktorý do tabuľky vloží náhodné údaje. Nerobte si starosti, ak nerozumiete nasledujúcemu kódu – pre tento návod to nie je dôležité.

Uložte tento súbor s názvom create-random-data.php do toho istého priečinka.

Najprv zahrnieme súbor pripojenia k databáze. Potom nastavíme časový rámec, z ktorého sa náhodne vyberie čas na registráciu používateľa. Môžete zmeniť počet riadkov, ktoré sa majú vložiť. Ak to chcete urobiť, musíte upraviť premennú $RecordsToInsert.

Následne spustíme skript na vloženie vygenerovaných záznamov do databázy. Ak chcete spustiť tento proces, prejdite na túto adresu - http://localhost/fcdemo/generate-random-data.php.

Nakoniec by ste mali vidieť správu: „Vložené ($RecordsToInsert) záznamy“

Krok 2. Pripravte kostru webovej stránky

Musíme tvoriť najviac jednoduchá stránka na zobrazenie nášho grafu. Niečo také:

FusionCharts v3.2 – LinkedCharts PHP Demo