Vagn Kofoed skrev:
> Den var enkel og smart. Virkelig KISS!
Jeg ved ikke om koden er for forvirrende, og jeg orker ikke at rette
den ret meget til, men du kan kikke på den.
Der bruges tal fra
$aldersgruppe - et array der omfatter 15-19, 20-24 osv.
$result - er en klasse der indeholder de statistiske tal fordelt
på aldersgrupper
Her er selve tabellen.
define('GROUPSIZE', 5); // Intervallet i aldersfordelingsgrupperne.
define('STRETCH', 6); // Bruges til at regulere den synlige længde på søjlerne.
echo TABLE;
echo "<tr><td colspan='3'> </td><td><img src='stat_tom.gif' height='1' alt='' class='fullsize' width='100%'></td></tr>\n";
echo "<tr><td colspan='4'><strong>Aldersfordeling</strong>";
if ($results->aldersgruppe[0]) echo " (ukendt alder: ".$results->aldersgruppe[0].")";
echo "</td></tr>\r\n";
for ($begin=1; !$results->aldersgruppe[$begin]; ++$begin);
for ($finish=AGEGROUPMAX; !$results->aldersgruppe[$finish]; --$finish);
echo "<tr><th>Alder</th><th>Pct.</th><th>Antal</th></tr>\n";
for ($group=$begin; $group<=$finish; ++$group) {
$value=$results->aldersgruppe[$group];
// IE kan ikke tåle decimaler i procentsatserne (width).
$percentage=(int) (($value/$antal*100*STRETCH));
echo "<tr><td>".$group*GROUPSIZE." - ".($group*GROUPSIZE+GROUPSIZE-1).": </td>"
."<td class='tal'>".(number_format($value/$antal*100,1,',','.'))."</td>"
."<td class='tal'>$value</td>";
if ($value)
echo "<td valign='bottom'><img src='stat_enhed.jpg' height='14' "
."width='".$percentage."%' alt=''></td>";
echo "</tr>\n";
}
echo TOMLINJE;
echo TABLEEND;
CSS (udpluk)
..fullsize {
width: 250px;
height: 1px;
visibility: hidden;
}
--
Bertel
http://bertel.lundhansen.dk/ FIDUSO:
http://fiduso.dk/