Statistiek weergave en berekening
- Supermarkt 1 - 2 meldingen
- Supermarkt 2 - 8 meldingen
- Supermarkt 3 - 10 meldingen
deze informatie in percentages uitrekenen en die doorsturen naar een een grafisch minibalk (zoals deze in poll statistieken te zien is.
Waarbij natuurlijk het langste balkje de meeste meldingen representateren.
De data heb ik al in een $result_array staan.
Dus alles na dat punt is voor mij nog wazig.
Gewijzigd op 20/07/2010 10:58:14 door Www JdeRuijterNL
En vervolgens het balkje tonen met behulp van bijvoorbeeld CSS: een width in percentages...
Edit: voorbeeldje:
Code (php)
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
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
<?php
$aantal_meldingen = 200;
$totaal_meldingen = 250;
$percentage = round($aantal_meldingen / $totaal_meldingen * 100);
?>
<html>
<head>
<style type="text/css">
.outer_box {
width: 500px;
height: 50px;
border: 1px solid black;
}
.inner_box {
width: <?php echo $percentage; ?>%;
height: 100%;
background-color: yellow;
}
</style>
</head>
<body>
<div class="outer_box">
<div class="inner_box"></div>
</div>
</body>
</html>
$aantal_meldingen = 200;
$totaal_meldingen = 250;
$percentage = round($aantal_meldingen / $totaal_meldingen * 100);
?>
<html>
<head>
<style type="text/css">
.outer_box {
width: 500px;
height: 50px;
border: 1px solid black;
}
.inner_box {
width: <?php echo $percentage; ?>%;
height: 100%;
background-color: yellow;
}
</style>
</head>
<body>
<div class="outer_box">
<div class="inner_box"></div>
</div>
</body>
</html>
Gewijzigd op 20/07/2010 11:10:12 door Joren de Wit
Perfecte resultaat.
Alleen vanwege de foreach($result as $object);
endforeach;
Heb ik de CSS boven aan de code gezet en niet in de head, omdat ik alles na de head niet vermenigvuldigd wil hebben na alle inhoud.
Gewijzigd op 20/07/2010 14:31:51 door www JdeRuijterNL
Hoe zou je een foreach bovenaan de pagina:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
$all_supermarkt = Vers_get::find_all_supermarkt();
foreach($all_supermarkt as $object_super):
$supermarkt_sum = Vers_get::sum_per_topic($object_super->supermarkt);
$supermarkt_count = Vers_get::count_all();
$percentage = round($supermarkt_sum / $supermarkt_count, 2) * 100;
endforeach;
foreach($all_supermarkt as $object_super):
$supermarkt_sum = Vers_get::sum_per_topic($object_super->supermarkt);
$supermarkt_count = Vers_get::count_all();
$percentage = round($supermarkt_sum / $supermarkt_count, 2) * 100;
endforeach;
door kunnen laten gaan in het midden van de pagina:
Code (php)
UPDATE:
LAat maar, ik heb er een inline style van gemaakt.
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<p style="background:#eb6;
border:1px solid #fff;
color:#fff;
font-weight:bold;
height:18px;
padding:3px;
width:<?php echo $percentage; ?>%;"><?=$percentage;?>%</p>
border:1px solid #fff;
color:#fff;
font-weight:bold;
height:18px;
padding:3px;
width:<?php echo $percentage; ?>%;"><?=$percentage;?>%</p>
Gewijzigd op 20/07/2010 15:19:55 door www JdeRuijterNL
Een andere oplossing was het gebruik van een array geweest: in je foreach sla je de percentages tijdelijk op in de array en als je ze nodig hebt echo je ze simpelweg vanuit die array...