Lite problem att få till procentsifforrna så att dem stämmer om man räknar ihop alla. Det är inget fel på värdena, det är bara det att jag helst inte vill skriva ut en massa decimaler.... det måste finnas ett sätt att lösa detta på.
så här ser det ut
<?php
//antal staplar så att looparna körs rätt antal gånger
$staplar = 20;
function GetAntal($kategori){
$get = "SELECT COUNT(id) as antal FROM x WHERE x='$x";
$do = mysql_query($get) or die('ERROR 112');
$value1 = mysql_fetch_assoc($do);
return intval($value1['antal']);
}
?>
<div align="left" style="width:800px; margin-top:10px; color:#666666; font-size:13px;">
<img src="pic/dsgn/statistik_t.png" alt="" border="0" style="margin-top:10px; margin-bottom:5px; margin-left:10px;" />
<br />
<?php
//Alla kategorier
$kategori[0] = "x";
$kategori[1] = "x";
$kategori[2] = "x";
$kategori[3] = "x";
$kategori[4] = "x";
$kategori[5] = "x";
$kategori[6] = "x";
$kategori[7] = "x";
$kategori[8] = "x";
$kategori[9] = "x";
$kategori[10] = "x";
$kategori[11] = "x";
$kategori[12] = "x";
$kategori[13] = "x";
$kategori[14] = "x";
$kategori[15] = "x";
$kategori[16] = "x";
$kategori[17] = "x";
$kategori[18] = "x";
$kategori[19] = "x";
$kategori[20] = "x";
$GetKategori[0] = "x";
$GetKategori[1] = "x";
$GetKategori[2] = "x";
$GetKategori[3] = "x";
$GetKategori[4] = "x";
$GetKategori[5] = "x";
$GetKategori[6] = "x";
$GetKategori[7] = "x";
$GetKategori[8] = "x";
$GetKategori[9] = "x";
$GetKategori[10] = "x";
$GetKategori[11] = "x";
$GetKategori[12] = "x";
$GetKategori[13] = "x";
$GetKategori[14] = "x";
$GetKategori[15] = "x";
$GetKategori[16] = "x";
$GetKategori[17] = "x";
$GetKategori[18] = "x";
$GetKategori[19] = "x";
$GetKategori[20] = "x";
//Referenser i varje kategori
for($i = 0; $i <= $staplar; $i++){
$antal[$i] = GetAntal($GetKategori[$i]);
}
//räknar ut antal
for($i=0; $i<=$staplar; $i++){
$sum +=$antal[$i];
}
$barH = 3; //Bestämmer höjden på staplarna
//Omvandlar värden till procent i form av 10.0%
for($i = 0; $i <= $staplar; $i++){
$value[$i] = ($antal[$i] / $sum) * 100;
$value[$i] = number_format($value[$i], 1, '.', '');
}
?>
<table width="122" border="0" align="center" cellspacing="0" cellpadding="2" id="graph">
<tr>
<?php
for($i=0; $i<=$staplar; $i++){
?>
<td width="20" valign="bottom" align="center" title="<?php echo $kategori[$i];?>: <?php echo $antal[$i];?> st">
<?php
echo $value[$i];
echo "%";
?>
<img src="pic/vb.gif" width="20" height="<?php echo $value[$i]*$barH; ?>" alt="" border="0" /><br />
</td>
<?php
}
?>
</tr>
</table>
</div>
För att förklara ytterligare... I detta fallet så har vi 21 staplar och varje stapel får ett värde som består av x% som vi skriver ut ovanför staplarna. Räknar man då ihop alla dessa siffror ska det helst bli 100% totalt :)
Sen om ni undrar vad alla x gör så är det bara jag som tagit bort vad som stod där egentligen.