Visa ett inlägg
Oläst 2006-09-01, 13:31 #9
thorsells avatar
thorsell thorsell är inte uppkopplad
Medlem
 
Reg.datum: Feb 2004
Inlägg: 295
thorsell thorsell är inte uppkopplad
Medlem
thorsells avatar
 
Reg.datum: Feb 2004
Inlägg: 295
Hm, vet inte riktigt om det är det jag eftersträvar...
Problemet kan alltid lösas med PHP, men då måste resultatet sparas och hela sökningen med resultat måste gås genom.

Nedanstående exempel visar en sökning i en topplista, sökningen sorteras efter totscore (=totala antalet röster) och votes (=summan vid varje röstning tillagd 1-10, så vid tex. två röstningar där två 10r röstas ger votes = 20).
Nu får man en sorterad lista där den med mest poäng kommer överst och så vidare..
För att få reda på vart en medlem med id-numret $id ligger i denna sorterade lista måste reslutatet gås genom med PHP som exemplet nedan visas..

Kod:
<?
$get_list_check = $tsdb->query("SELECT id,totscore FROM topplista ORDER BY (votes/totscore) DESC, totscore DESC");
$i=1;
$list_pos = $get_list_check->numRows();
while ($rad=$get_list_check->fetchRow()) 
{
	if ($id==$rad["id"]) 
	{
 *$list_pos = $i;
 *break;
	}
	$i++;
}
$get_list_check->free();
?>
Tycker dock att detta verkar lite osmidigt samt att det tar lång tid.. Därför jag undrade om SQL kunde lösa resultatet åt mig från början
thorsell är inte uppkopplad   Svara med citatSvara med citat