24. januar 2003 - 17:37Der er
10 kommentarer og 2 løsninger
round til 0.5
hej jeg har lavet et gemmensnit men jeg kunne godt tænke mig at den bruge stjerne_on_half.gif så den også kan vise halve stjerner (den skal ikke runde til nermeste hele tal men til det nærmeste halvde tal (0.5)
kode:
$gennemsnit=mysql_result(mysql_query("SELECT ROUND(AVG(vote)) AS gennemsnit FROM tagwall"),0); // Her tæller vi op til og med antallet af stemmer for($i=0;$i<$gennemsnit;$i++) { $stjerner.='<IMG src="stjerne_on.gif">'; } $i++; // Her udfylder vi resten af pladserne, til og med 5 for($i=$i;$i<=5;$i++) { $stjerner.='<IMG src="stjerne_off.gif">'; } echo '<CENTER>'.$stjerner.'</CENTER><br>';
jakob: Hvad er din baggrund egentlig - du tænker generelt meget analytisk - er det udelukkende erfaring eller har du også en uddannelsesmæssig baggrund som faciliterer dette? (Bare nysgerrig!)
$gennemsnit=mysql_result(mysql_query("SELECT ROUND(ROUND(AVG(vote)*2)/2,1) AS gennemsnit FROM tagwall"),0); // Her tæller vi op til og med antallet af stemmer for($i=0;$i<$gennemsnit;$i++) { $stjerner.='<IMG src="stjerne_on.gif">'; } // Er der en halv tilbage? if($gennemsnit-$i==0.5) { $stjerner.='<IMG src="stjerne_on_half.gif">'; } $i++; // Her udfylder vi resten af pladserne, til og med 5 for($i=$i;$i<=5;$i++) { $stjerner.='<IMG src="stjerne_off.gif">'; } $msg = $row["besked"]; echo '<table border="0" width="744" style="border: 1px solid #000000;" align="center" cellspacing="0" cellpadding="0">'; echo '<tr><td bgcolor="#80BCFF" style="border-bottom: 1px solid #000000;"><div style="float:left;">'.$stjerner.'</div><div style="float:right;"><a href="mailto:'.$row['mail'].'">'.$row['navn'].'</a>|'.$row['dato'].'</div>'; echo "</td></tr><tr><td colspan='2' bgcolor='#B9E1FD'>"; echo nl2br($msg); echo "</td></tr>"; echo '</table><br>'; }
den går vist galt her: if($gennemsnit-$i==0.5) { // det er kun nogen gange du tilføjer ½-stjerne $stjerner.='<IMG src="stjerne_on_half.gif">'; } $i++; // men du tæller altid $i een op
skulle den $i++ linie ikke ind i if sætningen: if($gennemsnit-$i==0.5) { // de gange du tilføjer ½-stjerne $stjerner.='<IMG src="stjerne_on_half.gif">'; $i++; // skal $i tælles een op }
$gennemsnit=mysql_result(mysql_query("SELECT ROUND(ROUND(AVG(vote)*2)/2,1) AS gennemsnit FROM tagwall"),0); // Her tæller vi op til og med antallet af stemmer for($i=0;$i<$gennemsnit;$i++) { $stjerner.='<IMG src="stjerne_on.gif">'; } // Er der en halv tilbage? if($gennemsnit-$i==0.5) { $stjerner.='<IMG src="stjerne_on_half.gif">'; $i++; } $i++; // Her udfylder vi resten af pladserne, til og med 5 for($i=$i;$i<=5;$i++) { $stjerner.='<IMG src="stjerne_off.gif">'; } $msg = $row["besked"]; echo '<table border="0" width="744" style="border: 1px solid #000000;" align="center" cellspacing="0" cellpadding="0">'; echo '<tr><td bgcolor="#80BCFF" style="border-bottom: 1px solid #000000;"><div style="float:left;">'.$stjerner.'</div><div style="float:right;"><a href="mailto:'.$row['mail'].'">'.$row['navn'].'</a>|'.$row['dato'].'</div>'; echo "</td></tr><tr><td colspan='2' bgcolor='#B9E1FD'>"; echo nl2br($msg); echo "</td></tr>"; echo '</table><br>'; } den her. ^nu siger den at der er fejl i den her
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.