login  Naam:   Wachtwoord: 
Registreer je!
 Forum
Zoeken  Regels  Help
Categorieën > PHP

ranks

timo – 17/11/2007 17:29
Ik heb 40 ranks nodig die je met punten krijgt (xx punten is rank 1, xx punten is rank 2, xx punten rank 5 etc)
hoe kan ik het aantal punten bepalen zonder dat ik uiteindelijk 40 elseif's heb, en hoe kan ik het aantal punten benodigd voor rank x het makkelijkst berekenen?

4 antwoorden

Gesponsorde links
Daisycon - Verdien geld met uw website

SilVeX – 17/11/2007 17:32
volgens mij moet je dan deze tutorial hebben:

Klik hier voor de tutorial

Koen – 17/11/2007 17:44 (Laatst gewijzigd op 17/11/2007 18:04)
Je zet alle ranks in een array en doet dan zo:
  1. <?php
  2. $ranks = array(10,30,70,100,120); // wel op volgorde zetten..
  3. $rankaid = array(10=>"rank1",30=>"rank2",70=>"rank3",100=>"rank4",120=>"rank5");
  4. $points = 89;
  5. $ranks = array_reverse($ranks);
  6. foreach($ranks as $value) {
  7. if($points >= $value) {
  8. $derank = $rankaid[$value];
  9. break;
  10. }
  11. }
  12. if(!@isset($derank)) {
  13. $derank = "geen_rank";
  14. }
  15. ?>


Als je het niet begrijpt zal ik het wel uitleggen.
edit: zat foutje in

timo – 17/11/2007 17:59
ik begrijp het wel, maar het is niet helemaal wat ik bedoel:P op deze manieren moet ik toch zelf een aantal punten bedenken, ik zoek meer naar x + x % maar het moet niet te explosief toenemen..

KingIsulgard – 18/11/2007 23:02 (Laatst gewijzigd op 18/11/2007 23:15)
zet je punten in een array en sorteer die van laag naar hoog of van hoog naar laag en gebruik dan gwn een for lus.

Je kan het zelfs met usernames en dergelijke doen mits wat uitbreiding:
  1. <?php
  2. // De users met hun punten
  3. $users["user1"] = 10;
  4. $users["user2"] = 35;
  5. $users["user3"] = 20;
  6.  
  7.  
  8. // Sorteer ze van laag naar hoog
  9. sort($users);
  10.  
  11. // Schrijf de rankings
  12. foreach ($users as $rank => $points) {
  13. echo $rank+1 . ". " . $name . " with " . $points . " points<br>\n";
  14. }
  15. ?>


Gesponsorde links

Dit onderwerp is gesloten.
Actieve forumberichten:

© 2002-2012 Sitemasters.be - Regels - Gehost door: Vircon - Laadtijd: 0.077s