Sjuriss Skrevet 19. oktober 2009 Del Skrevet 19. oktober 2009 (endret) Hei, jeg lurte på om du/dere kunne hjulpet meg med en ting i PHP. Jeg har en database der jeg har en kolonne som heter rankpoeng, også er det slik at f.eks på 200 rankpoeng så har du fått en rank som heter "Selger". Det jeg lurer på er hvordan jeg kan vise ranknavnet til brukeren på profilen når det bare er en kolonne som heter rankpoeng der det bare er tall? Setter veldig pris på svar, takk. Mvh Sjuriss Endret 21. oktober 2009 av Sjuriss Lenke til kommentar
Yankes Skrevet 19. oktober 2009 Del Skrevet 19. oktober 2009 (endret) Nå vet ikke jeg hvordan du har bygd opp ranksystemet ditt, men du får bare tilpasse koden.. Så lenge du bare nevnte rank 200, så tok jeg utgangspunkt i at du får en ny rank pr. 200 poeng. <?php // sett at $rank inneholder rankpoeng fra databasen $rank = $database['rankpoeng']; $ranks = array(0 => "Rank 0-199", 200 => "Rank 200-399", 400 => "Rank 400-599", 600 => "Rank 600-799"); // osv.. for($i = 0; $i < sizeof($ranks); $i++) { $rank_fom = $i * 200; $rank_tom = $rank_fom + 200; if($rank >= $rank_fom && $rank < $rank_tom) { print "Din rank er: ".$ranks[$rank_fom]; } } ?> Endret 19. oktober 2009 av YaNkEs Lenke til kommentar
Sjuriss Skrevet 20. oktober 2009 Forfatter Del Skrevet 20. oktober 2009 Takk for svar, jeg vet ikke helt hvordan jeg skal gjøre slik at den passer for meg. Her er rank tabellen min: Rank1 [Rankpoeng: 1-99] Rank2 [Rankpoeng: 100-199] Rank3 [Rankpoeng: 200-499] Rank4 [Rankpoeng: 500-999] Rank5 [Rankpoeng: 1000-1499] Rank6 [Rankpoeng: 1500-1799] Rank7 [Rankpoeng: 1800-2799] Rank8 [Rankpoeng: 2800-3999] Rank9 [Rankpoeng: 4000-5499] Rank10 [Rankpoeng: 5500-7499] Rank1 [Rankpoeng: 10000-10000] Lenke til kommentar
TheClown Skrevet 20. oktober 2009 Del Skrevet 20. oktober 2009 (endret) Endrer 200 => "Rank 200-399" til [laveste verdi i hver rank] => "Rank [laveste verdi i hver rank]-[høyeste verdi i hver rank]", f.eks 5500 => "Rank 5500-7499" Endret 20. oktober 2009 av TheClown Lenke til kommentar
Yankes Skrevet 20. oktober 2009 Del Skrevet 20. oktober 2009 (endret) Det blir feil TheClown, med tanke på utregningene jeg brukte.. Sjuriss; bruk denne koden og bytt ut der det står Rank x-x med navnet ranken skal ha, f.eks. "Selger" som du skrev i første innlegget. <?php // sett at $rank inneholder rankpoeng fra databasen $rank = $database['rankpoeng']; $ranks = array( 1 => array("fra" => 1, "rank" => "Rank 1-99"), 2 => array("fra" => 100, "rank" => "Rank 100-199"), 3 => array("fra" => 200, "rank" => "Rank 200-499"), 4 => array("fra" => 500, "rank" => "Rank 500-999"), 5 => array("fra" => 1000, "rank" => "Rank 1000-1499"), 6 => array("fra" => 1500, "rank" => "Rank 1500-1799"), 7 => array("fra" => 1800, "rank" => "Rank 1800-2799"), 8 => array("fra" => 2800, "rank" => "Rank 2800-3999"), 9 => array("fra" => 4000, "rank" => "Rank 4000-5499"), 10 => array("fra" => 5500, "rank" => "Rank 5500-7499"), 11 => array("fra" => 7500, "rank" => "Rank 7500-10000"), 12 => array("fra" => 10001) // Dette array'et er bare for at array 11 skal ha noe å regne ut ifra (den skal inneholde høyeste mulige rank + 1, altså her; 10001) ); for($i = 1; $i < sizeof($ranks); $i++) { $fom = $i; $tom = $fom + 1; if($rank >= $ranks[$fom]["fra"] && $rank < $ranks[$tom]["fra"]) { print "Din rank er: ".$ranks[$fom]["rank"]; } } ?> Det her burde funke bra, du må bare sørge for at ingen noen gang får rankpoeng 0 eller over 10000 (med mindre du endrer på koden da selvfølgelig), hvis rankpoengene holder seg f.o.m. 1 t.o.m. 10000, så vil det funke helt fint. EDIT: en liten forklaring; denne koden kan du tilpasse hvilket som helst ranksystem. Array'et "fra" er det tallet ranken starter på og array'et "fra" I neste array er der neste rank starter. Det vil si at f.eks. rank nr. 8 er fra $ranks[8]["fra"] (her: 2800) til $ranks[9]["fra"] - 1 (her: 3999). Så her kan du endre på tallene så mye du vil uten at det går utover koden. Endret 20. oktober 2009 av YaNkEs Lenke til kommentar
Sjuriss Skrevet 21. oktober 2009 Forfatter Del Skrevet 21. oktober 2009 Tusen takk Yankes, det virker fint nå. 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å