robgar Skrevet 4. oktober 2004 Del Skrevet 4. oktober 2004 Hei, jeg tenkte litt på hvordan jeg kunne lage meg et ranking system. Kom på en ide. (Koden: Rank system) Og jeg bruker en database klasse (Database Klasse) Eksempel tabell ( 5 rader) | navn | rank | rank_verdi | id | | Lars | 1 | 200 | 1 | | Petra | 2 | 100 | 2 | | Nils | 3 | 250 | 3 | | Sara | 4 | 450 | 4 | | Hans | 5 | 25 | 5 | Det er da altså rank verdien som bestemmer hvilken rank du har. Når skriptet har kjørt, skal tabellen se slik ut: | navn | rank | rank_verdi | id | | Lars | 3 | 200 | 1 | | Petra | 4 | 100 | 2 | | Nils | 2 | 250 | 3 | | Sara | 1 | 450 | 4 | | Hans | 5 | 25 | 5 | Men slik blir det altså ikke.. De feilene jeg kan tenke på nå er: * Om du har en på rank 5 som har høyere verdi en han på rank 2, så vil ikke rank 2 forandre plass, menst rank 5 blir bare til 4. osv. * Ranken blir litt vanskelig ¨å dele ut når man legger inn i tabellen. Er det noen som hvet noen andre metoder å gjøre dette på, eller noen tips til hva jeg kan gjøre for å få dette til å virke skikkelig? Det ville jeg sutte stor pris på. På forhånd takk. Lenke til kommentar
robgar Skrevet 4. oktober 2004 Forfatter Del Skrevet 4. oktober 2004 Tenkte litt og fant en løsning. function connect() { litt.. } $query = mysql_query("SELECT * FROM `rank_tabell` ORDER BY `rank_verdi`"); $i = "0"; while ($rad = mysql_fetch_array($query)) { $i++; $rank = $rad['rank']; if($i !== $rank) { mysql_query("UPDATE `rank_tabell` SET `rank` = '".$i."' WHERE `id` = '".$rad['id']."';"); } } Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå