29. september 2003 - 13:46
Der er
23 kommentarer og 1 løsning
Procent regning.
Heya der.. Jeg har en side hvor jeg har listet en række kampe, og ovenfor på denne side vil jeg godt ha en form for stats module, dvs kampe vundet = antal Kampe tabt = antal Kampe uafgjort = antal.... Jeg har oprettet i min sql db et felt under "matches" som hedder result og har giver hver kamp henhold vis 1-2-3 som er delt op på følgende måde Vundet = 1 Tabt = 2 Uafgjort = 3 Det jeg nu vil have er sådan en status table hvori der står Vundet = 23 Tabt = 4 Uafgjort = 5 Og neden for det skal der være det samme bare i procent... Håber det er til at lave har noget kode her :KODE: <table align="center" cellspacing="0" width="400" cellpadding="0" border="0" style="FONT-SIZE: 8pt"> <tr> <td align="center" style="FONT-SIZE: 8pt"> <table align="center" style="FONT-SIZE: 8pt"> <tr> <td width="24" align="left" style="FONT-SIZE: 8pt"><font color="#C98442"> </font></td> <td width="94" align="left" style="FONT-SIZE: 8pt"><font color="#C98442">Clan:</font></td> <td width="100" align="left" style="FONT-SIZE: 8pt"><font color="#C98442">Type:</font></td> <td width="78" align="left" style="FONT-SIZE: 8pt"><font color="#C98442">Result:</font></td> <td width="80" align="left" style="FONT-SIZE: 8pt"><font color="#C98442">Details:</font></td> </tr> </table> <?php $hent = @mysql_query("SELECT * FROM matches order by id DESC"); while ($vis = @mysql_fetch_array($hent)) { $medlemid = $vis['id']; $clannavn = $vis['clan']; $flag = $vis['country']; $medlemlink = "<a href=\"match_detail.php?id=$medlemid\">details</a>"; $league = $vis['league']; $score = $vis['score']; ?> <table align=center style="FONT-SIZE: 8pt"> <tr> <td width="23" align="left"> <? echo "<a href='match_detail.php?id=$id"; echo $medlemid; echo "'><img src='images/flags/"; echo $flag; echo ".gif' border=0></a>"; ?></td> <td width="95" align="left"><?php echo $clannavn; ?></td> <td width="101" align="left"><?php echo $league; ?></td> <td width="76" align="left"><?php $score_array = explode('-',$score); if ($score_array[1] > $score_array[0]) { $color = 'red'; } elseif ($score_array[1] < $score_array[0]) { $color = '#33cc00'; } else { $color = 'blue'; } ?><font size="1" color="<?php echo $color; ?>"><?php echo $score; ?></td> <td width="81" align="left"><?php echo $medlemlink; ?></td> </tr></table> <?php } ?> </tr></table> :KODE SLUT:
Annonceindlæg fra Infor
29. september 2003 - 13:51
#1
Er det procentregningen, der giver dig problemer eller er det at kode omregning til procent?
29. september 2003 - 13:54
#2
det er kode... :(
29. september 2003 - 14:04
#3
Hvis du har hevet det ud af db, dvs du har de tre tal. Lad os sige de er gemt i følgende variabler: $vundet = x; $tabt = y; $uafgjort = z; Så laver vi en variabel til at tælle kampe ialt: $ialt = $vundet + $tabt + $uafgjort; Der hvor det skal sættes ind i procent skriver du så bare: <?php echo $vundet/$ialt; ?> osv... Var det det svar du ledte efter?
29. september 2003 - 14:12
#4
nej ikk helt... jeg har en tabel Kaldet "matches" under den har jeg jo så en masse felter med modstander, mål, osv osv osv... til sidst har jeg så et felt som hedder "result" idet felt skriver jeg 1-2-3 alt efter hvad kampen er endt... dvs hvis en kamp er vunder smider jeg et 1tal ind i... det på den måde det skal regnes ud :P
29. september 2003 - 14:22
#5
$hent = @mysql_query("SELECT result FROM matches"); while ($vis = @mysql_fetch_array($hent)) {
29. september 2003 - 14:22
#6
ups blev ikke færdig... keyboard knas...
29. september 2003 - 14:24
#7
$hent = @mysql_query("SELECT result FROM matches"); while ($vis = @mysql_fetch_array($hent)) { $res = $vis['result']; if($res ==1) $vundet++; else if($res ==2) $uafgjort++; else if($res ==3) $tabt++; noget ala det?
29. september 2003 - 14:24
#8
haha :D
29. september 2003 - 14:24
#9
med tabt og uafgjort bytte om...
29. september 2003 - 14:25
#10
ja det kunne det godt tyde på... men hvordan vil du så skrive det om til procent og antal vundne kampe... jeg er sq stadig lidt newbie.. :)
29. september 2003 - 14:27
#11
antal vundne kampe ligger i $vundet. Til procent som jeg skrev i 29/09-2003 14:04:44, finde antal kampe ialt, og så dividere.
29. september 2003 - 14:34
#12
<?php $hent = @mysql_query("SELECT result FROM matches"); while ($vis = @mysql_fetch_array($hent)) { $res = $vis['result']; if($res ==1) $vundet++; else if($res ==2) $tabt++; else if($res ==3) $uafgjort++; ?> <?php echo $vundet?> nu skriver den bare en lang række tal :D
29. september 2003 - 14:34
#13
1 1 2 2 3 3 3 4 4 4 4 4 4 5 6 6 7 7 7 8
29. september 2003 - 14:38
#14
det er fordi du har din echo med inde i while løkken... Prøv den her: <?php $hent = @mysql_query("SELECT result FROM matches"); while ($vis = @mysql_fetch_array($hent)) { $res = $vis['result']; if($res ==1) $vundet++; else if($res ==2) $tabt++; else if($res ==3) $uafgjort++;} ?> <?php echo $vundet?>
29. september 2003 - 14:38
#15
Der er 8 vundne kampe... du skriver den bare ud for hver gang du undersøger et resultat... ;-)
29. september 2003 - 14:39
#16
Manglede slut tuborg }
29. september 2003 - 14:43
#17
oki nu spiller det.. :P men asso hvis jeg laver en <?php echo $vundet/$ialt; ?> får jeg dette... som også er rigtig nok men kan man ikk få den til at skrive 36% i stedet for.... ? 0.36363636363636
29. september 2003 - 14:45
#18
jo... tænk lidt over det... ;-) hvordan vil du få noget 100 gange større og med et ekstra tegn bagved.. ;-)
29. september 2003 - 14:45
#19
gange med 100 :D
29. september 2003 - 14:46
#20
men asso... jeg er ikk den onde guru
29. september 2003 - 14:47
#21
for at fjerne det efter kommaet bruger du round(). Så det bliver echo round(($vundet/$ialt)*100) . "%";
29. september 2003 - 14:48
#22
Det er fint du spørger... Man bliver ikke klogere ved at nikke... ;-)
29. september 2003 - 14:51
#23
haha :D thx mate
29. september 2003 - 14:54
#24
skulle det være en anden gang... ;-)
Vi tilbyder markedets bedste kurser inden for webudvikling