Avatar billede bigilo Nybegynder
08. marts 2004 - 13:31 Der er 10 kommentarer og
1 løsning

Udregne gennemsnit af bedømelser

Hej

Jeg har lavet en side hvor man kan tilføje en kommentar, og og så smide en bedømelse af spilleren.
spillerne bliver bedømt på en skala fra 1 til 5.
Nu kommer mit progblem så.

Hvordan udregner jeg så gennemsnitet af en spillers bedømelse???

Håber der er nogle kloge hovder der kan hjælpe mig

på forhånd tak
Avatar billede bigilo Nybegynder
08. marts 2004 - 13:35 #1
ved godt hvordan man regner, bare ikke hvordan man gør det med PHP....
Avatar billede hmortensen Nybegynder
08. marts 2004 - 13:39 #2
Ligger du bedømmelserne i en database eller hvordan har du dem ?
Avatar billede Slettet bruger
08. marts 2004 - 13:47 #3
Hvis du bruger MySQL, så har den en fin funktion til det:

SELECT navn, AVG(point) as gennemsnit FROM tabel GROUP BY navn
Avatar billede styrk Nybegynder
08. marts 2004 - 13:53 #4
du regner vel bare alle bedømmelser sammen? og devidere med antal bedømmelser..

scriptet vil se nogenlunde sådan ud:
$i = 0;
$be = 0;
while($r = blabla) // kør bedømmelser pr. enkelte spilelr
{
  $be .= $r["point"]+$be;
  $i++;
}

$result = $be/$i;

burde virke, hvis du kan følge mig ;)
Avatar billede bigilo Nybegynder
08. marts 2004 - 14:06 #5
sandbox... Hvordan mener du??? kan ikke lige føgle dig....

rasmustyrk... kan du lige forklare den lidt mere??? er ikke så god til PHP

hindu_skp.... i MySQL
Avatar billede Slettet bruger
08. marts 2004 - 14:13 #6
AVG er en indbygget funktion i MySQL, der tager gennemsnit af en kolonne.

$res=mysql_query("SELECT navn, AVG(point) as gennemsnit FROM tabel GROUP BY navn");
while($row=mysql_fetch_assoc($res)){
  echo "{$row['navn']} har et gennemsnit på {$row['gennemsnit']} point\n";
}

Nu ved jeg jo ikke, hvad din tabel og dine kolonner hedder, så det må du selv rette til.
Avatar billede bigilo Nybegynder
08. marts 2004 - 14:25 #7
min tabel hedder kommentar og kolonen hedder bedømelse...
Avatar billede Slettet bruger
08. marts 2004 - 14:29 #8
Så kan du prøve med dette:

$res=mysql_query("SELECT navn, AVG(bedømelse) as gennemsnit FROM kommentar GROUP BY navn");
while($row=mysql_fetch_assoc($res)){
  echo "{$row['navn']} har et gennemsnit på {$row['gennemsnit']} point\n";
}
Avatar billede bigilo Nybegynder
08. marts 2004 - 14:52 #9
jeg kan ikke helt finde du af det...

Min datadase ser sådan her ud:

ID, et ID nummer til kommentaren.
spillernr, nummeret til den spiller som kommentaren er til
kommentar, kommentaren
bedømelse, der hvor man giver sin bedømelse, på en skala fra 1 til 5
af, navn på den der har skrevet kommentarten.

Jeg vil nu gerne have at jeg kan sotere databasen så den finder gennemsnitet af alle de poster hvor spillernummeret er lig med 153.. dette er bare et ekspemel... "spillernr" finder den ved hjælp af URL'en

kan du prøve at hjælpe mig igen???
Avatar billede Slettet bruger
09. marts 2004 - 01:45 #10
$res=mysql_query("SELECT AVG(bedømelse) as gennemsnit FROM kommentar WHERE spillernr=153 GROUP BY spillernr");
$gennemsnit=mysql_fetch_result($res,0));
Avatar billede bigilo Nybegynder
09. marts 2004 - 09:27 #11
Tak for hjælpen... det køre bare nu.... en Stor tak fra mig
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester