Hallo,

Heeft er iemand een script om een grafiek op te maken van gegevens per maand van het jaar.
Ik heb dit al als voorbeeld , maar kan geen grafiek maken.

$sqlb="SELECT COUNT(*) as total FROM database WHERE MONTH(datin) = MONTH(CURRENT_DATE) AND YEAR(datin) = YEAR(CURRENT_DATE)";

$result = $con->query($sqlb);
$data =  $result->fetch_assoc();
echo '<center>';
echo '<font color ="black">Aantal ingaves deze maand : ' ;
echo'<font color ="red">'.$data['total'];
echo '<br>';



Dank bij voorbaat
Je hebt tot nu toe al een mooie query. Maar hoe zie jij je grafiek voor je? Met GDlib als afbeelding? Of met HTML5?
En wat voor grafiek wil je? Cirkeldiagram? Lijndiagram? Staafdiagram?

En heb je al iets gevonden om de grafieken mee samen te stellen?
Ikzelf ben wel fan van Chart.js.

Een codevoorbeeldje kan je hier vinden:
https://jsfiddle.net/eoLy415h/
Voor mij is een staafdiagram ideaal per maand
Nee ik heb nog niks gevonden, daarom min vraag hier aan de professionals.

Hoe zou ik chart.js kunnen gebruikenmet mijn query

Dank bij voorbaat
Ik heb net een codevoorbeeld toegevoegd aan mijn post hierboven.
Dat maakt al een stuk duidelijker hoe je een staafdiagram kan maken.

Een AJAX-request zou nog netter zijn zodat je de code makkelijk kan herbruiken voor meerdere soorten data.
Ariën ,

al heel hartelijk bedankt om dit te willen doen, ik ga dit bekijken hoe ik dit moet aanpakken om iedere maand het totaal daarin te krijgen.

Mocht je nog meer tips hebben , dan zijn ze zeker welkom.

bedankt


[size=xsmall]Toevoeging op 30/10/2023 17:05:39:[/size]

Weet je ook hoe ik mijn query kan aanpassen zodat ik mijn aantal per maand heb AUB.
Als het één soort data is, dan kan je gewoon alle data met een foreach in een nieuwe-array zetten en die met implode vormen tot bijv.
<?php
// haal hier je data op, verwerk het met foreach tot een nieuwe array $data[].

$values= implode(",",$data);
?>


/* Hier de rest van de JS-chart code*/

 data: [<?php echo $values;?> ],

/* Hier de rest van de JS-chart code*/


Maar persoonlijk zou ik een AJAX-request netter vinden.
Het is enkel de data van dit jaar, en het totaal per maand.
Berta Pappens op 30/10/2023 16:55:35

Weet je ook hoe ik mijn query kan aanpassen zodat ik mijn aantal per maand heb AUB.


Zoiets moet wel werken. Je groepeert op maand onder voorwaarde dat je een bepaald jaar pakt.


SELECT
    MONTH(datin) AS maand,
    COUNT(*) AS total
FROM
    tabel
WHERE
    YEAR(datin) = 2023
GROUP BY
    maand
ORDER BY
    maand;
ik heb een query voor deze maand , kan ik geen loop van 1 tot 12 gebruiken met deze query.
Wat lukt er niet aan? Ik krijg op mijn testdatabase netjes een 12 rijen met records met het maandnummer en het aantal items.
Ja inderdaad bij mij ook maar weet niet hoe ik dit moet aanbrengen naar de chart.js toe.

Dank u

Reageren