• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Beta-testers gezocht voor Crypto-oefenplatform

    Syntax 29 januari 2026 om 16:11
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 19 januari 2026 om 09:34
  • Developer Gezocht

    Mikevdk 10 januari 2026 om 18:57
  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • [FREE] WeFact Hosting module

    Jeroen.G 13 oktober 2025 om 14:09
  • Help testers nodig voor android app Urgent

    urgentotservices 26 september 2025 om 10:21
  • Versio vervanger

    Jeroen.G 25 augustus 2025 om 15:56
  • Afspraken systeem met planbeperking

    Lijno 1 augustus 2025 om 23:04

Marktplaats

  • 350 Nieuwe Domeinnamen Januari 2026

    shiga 1 februari 2026 om 14:21
  • 321 Nieuwe Domeinnamen December 2025

    shiga 1 januari 2026 om 10:26
  • Meerdere mafia game template te koop

    Syntax 26 december 2025 om 00:07

Om de 30 een ID

  • iCold
  • 17 oktober 2011 om 22:38
  • Closed
  • iCold
    Professional
    Ontvangen Reacties
    7
    Berichten
    1.630
    • 17 oktober 2011 om 22:38
    • #1

    Hey,

    Ik ben bezig met een soort statussysteem. Het ziet er zo uit:

    PHP
    function Level($insert){
    	
    	if($insert < 7){
    		$levelID = 0;
    	} elseif($insert < 17){
    		$levelID = 1;
    	} elseif($insert < 27){
    		$levelID = 2;

    Het heeft geen zin om 100 regels te schrijven van dat. Heeft iemand een idee hoe het in 1x kan?


    Heel erg bedankt!

  • Guest, wil je besparen op je domeinnamen? (ad)
  • Tim
    Enlightened
    Ontvangen Reacties
    77
    Berichten
    3.686
    • 17 oktober 2011 om 22:39
    • #2

    Probeer eens de % operator.

    Master student IT-recht en Master student Ondernemingsrecht & software ingenieur
    My Personal profile
    My professional profile (LinkedIn/CV)

  • R.Jipping
    ex Administrator
    Ontvangen Reacties
    1
    Berichten
    1.660
    • 17 oktober 2011 om 22:40
    • #3

    Ik snap de bedoeling niet helemaal, dus als ze bijvoorbeeld level 30 hebben krijgen ze id 1, als ze level 60 hebben id 2?

    This is ten percent luck, twenty percent skill
    Fifteen percent concentrated power of will
    Five percent pleasure, fifty percent pain
    And a hundred percent reason to remember the name!

  • iCold
    Professional
    Ontvangen Reacties
    7
    Berichten
    1.630
    • 17 oktober 2011 om 22:43
    • #4

    @brokentrack, wil je heel misschien een voorbeeld plaatsen.

    R.Jipping, Ja zoiets

  • Tim
    Enlightened
    Ontvangen Reacties
    77
    Berichten
    3.686
    • 17 oktober 2011 om 22:49
    • #5

    http://php.net/manual/en/language.operators.arithmetic.php

    Master student IT-recht en Master student Ondernemingsrecht & software ingenieur
    My Personal profile
    My professional profile (LinkedIn/CV)

  • iCold
    Professional
    Ontvangen Reacties
    7
    Berichten
    1.630
    • 17 oktober 2011 om 23:07
    • #6

    Ik weet het even niet. Ik heb nu dit (heb van de 30 een 4 gemaakt):

    PHP
    function getLevel($level){
    
    
          $i = 0;	
    	if($level % 4){
    	    $i++;
    		$levelID = $i;
    	}
    }

    Is dit nou goed of fout?

  • Tim
    Enlightened
    Ontvangen Reacties
    77
    Berichten
    3.686
    • 17 oktober 2011 om 23:15
    • #7
    PHP
    if($level % 4 == 0) {
    
    
    }


    Betekent: Als $level deelbaar is door precies 4, dan...

    Master student IT-recht en Master student Ondernemingsrecht & software ingenieur
    My Personal profile
    My professional profile (LinkedIn/CV)

  • Fitim
    Professional
    Berichten
    1.105
    • 18 oktober 2011 om 00:01
    • #8

    Array kan dat mee

  • FrankY
    Another one bites the dust.
    Ontvangen Reacties
    3
    Berichten
    598
    • 26 oktober 2011 om 18:01
    • #9

    Misschien zou je het met floor kunnen doen ?

    Dus zeg maar dit:

    PHP
    function Level ($input) 
    {
     $level = floor($input/4);
     return $level;
    }

    Bezig met cms:)

  • iCold
    Professional
    Ontvangen Reacties
    7
    Berichten
    1.630
    • 26 oktober 2011 om 21:27
    • #10

    Frank, tnx. Maar het gaat niet lukken. Er moet ook nog te zien zijn hoeveel procent je nog tot de volgende moet.

  • Darsstar
    Vreemd
    Berichten
    1.173
    • 26 oktober 2011 om 22:29
    • #11
    Citaat van iSilverStar

    Frank, tnx. Maar het gaat niet lukken. Er moet ook nog te zien zijn hoeveel procent je nog tot de volgende moet.


    ...

    PHP
    $level = Level($iets);
    
    
    echo 'Je moet nog ' . (100 - ($iets / (($level + 1) * 30))) . '% tot het volgende level.';

    Niet zomaar met goede oplossingen afwijzen met nieuwe voorwaarden, je hoort die meteen al te geven. Spendeer iets meer moeite aan je probleem uitleggen en verwachtingen duidelijk te maken.

    miauw!

  • iCold
    Professional
    Ontvangen Reacties
    7
    Berichten
    1.630
    • 26 oktober 2011 om 22:44
    • #12

    @Darr, dats niet waar. Ik heb ook wat geprobeerd. Maar ik kwam er niet uit;
    Beetje verkeerd gelezen. Ik dacht als ik de basis onder de knie kryg dan kan ik de rest zelf maken.

    PHP
    function procentLevel($insert){
    	$output = round(100 -(($insert/6) / 200), 0);
    	
    	return $output;
    }

    Ik dacht ik ga morgen echt goed kyken hoe het kan omdat ik nu byna in slaapval en even mn huiswerk maak

  • thexerox
    thexeroxprojects.be
    Ontvangen Reacties
    4
    Berichten
    414
    • 27 oktober 2011 om 16:25
    • #13

    je kan al je levels in een database steken en gwn checken met het huidige percentage van de gebruiker.

  • L.Groot
    Elite members
    Ontvangen Reacties
    31
    Berichten
    4.888
    • 27 oktober 2011 om 16:35
    • #14

    Met dit systeem moet het werken:

    PHP
    <?php
    function getStatus($rang){
    	// Personaliseer de volgende variabelen
    	$statusText = array("Beginner", "Groentje", "Loopjongen", "Maffiabaas", "Godfather"); // De verschillende ranken. Houd de eerste waarde ook bezet.
    	$increment = 7; // Bij elke .. levels volgende rank.
    	
    	// Systeempje om uit te rekenen
    	if($rang <= count($statusText * $increment)){ // Als de ingevoerde rang niet groter is dan de maximale waarde.
    		if(ctype_digit($rang/$increment)){ // Als de rang gedeeld door de increment een heel getal is, dan naar de volgende rank.
    			return $statusText[$rang];
    		} else{ // Anders een rank eerder pakken
    			return $statusText[floor($rang)];
    		}
    	} else{ // De ingevoerde waarde is groter, pak de hoogste rang.
    		return $statusText[count($statusText)];
    	}
    }
    
    
    // Uitwerking en gebruik
    echo getStatus(2); // Vervang 2 met de database waarde voor de rang, van de users tabel bijvoorbeeld.
    ?>
    Toon Meer

    De procent vordering kan je hier denk ik zelf wel bij maken. Daarnaast kan je de tekst waardes uiteraard ook in die numerieke level waardes van je aanpassen.

    Succes!

    Edit: er zat een klein bugje in plus een typfoutje. Nu moet het volledig werken.

  • iCold
    Professional
    Ontvangen Reacties
    7
    Berichten
    1.630
    • 27 oktober 2011 om 20:49
    • #15

    Lars, fijn dat je het probeert. En dat je het uitlegd.
    Maar zoals ik al eerder zei, het is een levelsysteem. Rank heeft er niets mee te maken, die Frank gaf is tot nu toe het beste.

  • iMootje
    Student
    Berichten
    129
    • 28 oktober 2011 om 11:31
    • #16

    Waar zo moeilijk?

    Maak 2 colommen aan?
    Level
    Levelp

    En dan op de pagina zetten:

    PHP
    mysql_query("UPDATE TABEL  SET `level`=`level`+1 WHERE levelp>='100' WHERE `username`='$user->name' LIMIT 1");
    mysql_query("UPDATE TABEL  SET `level`=`levelp`-100 WHERE levelp>='100' WHERE `username`='$user>name' LIMIT 1");

    Zoiets ?
    Kan wel foutje in zitten heb snel snel gedaan?
    Maar dits handiger?

  • iCold
    Professional
    Ontvangen Reacties
    7
    Berichten
    1.630
    • 28 oktober 2011 om 17:59
    • #17

    thexerox, wat bedoel je? Hy haalt de gegevens ook uit te database.
    @Larz, het heeft geen zin om 1 tot 100 erbij te zetten he. Of?
    iMootje, want, dan moet ik voor elke level weer + zoveel doen. Dan ben ik 50 regels verder.

    Wat doe ik fout; hij gaat tot 6 goed, daarna laat die nog 200+ zien

    PHP
    function procentLevel($insert){
        $output = round( (($insert/6) / 100), 0);
        
        return $output;
    }
  • Fitim
    Professional
    Berichten
    1.105
    • 28 oktober 2011 om 20:15
    • #18

    Gebruik ifs..

  • L.Groot
    Elite members
    Ontvangen Reacties
    31
    Berichten
    4.888
    • 28 oktober 2011 om 20:25
    • #19

    Je kan toch i.p.v die text rangen die ik heb gebruikt die ints erbij zetten?
    Of gebruik je echt puur de cijfers 1-100 en wil je bij elke increment dat cijfer plus 1?

    Want bij welke increment wil je dat en van welke tot welke gaat dat systeem?

    Als je een beetje wiskunde en economie gehad hebt dan moet je die volgens mij zo kunnen maken.

    Edit:

    PHP
    <?php
    function getLevel($input){
        // Personaliseer de volgende variabelen
        $increment = 10; // Bij elke .. waardes naar volgende levelID.
    	$minvalue = 7; // De input waarde tot waarbij levelID = min.
    	$maxvalue = 1007; // De maximale waarde waarbij levelID = max.
    	$min = 0; // De minimale waarde van levelID, wordt gebruikt bij minvalue.
    	$max = 100; // De maximale waarde van levelID, wordt gebruikt bij maxvalue.
    	$correction = 1; // De correctie, indien 0: waarde dan >= input, indien 1: waarde dan < input
    	
    	if($input+$correction < $minvalue){
    		return $min;
    	} else if($input+$correction > $maxvalue){
    		return $max;
    	} else{
    		return ceil(($input+$correction-$minvalue)/$increment);
    	}
    }
    
    
    // Uitwerking en gebruik
    echo getLevel(2); // Vervang 2 met de database waarde voor het level.
    ?>
    Toon Meer

    Doet dat misschien wat je wil?

    Preview kan je zien op https://rapifia.nl/calc_rang.php?rang=8 (acht vervangen met de input waarde).

  • Dein
    Master
    Berichten
    2.614
    • 28 oktober 2011 om 22:24
    • #20

    Als je geen 100 regels met if statements wilt maken gooi het dan in een loop en begin bij 7 en tel telkens verder en doe een auto increment op op de ID's ?

    Dus als de waarde overeenkomt i++; of zoiets. Denk dat dat jou probleem wel oplost.

    Verklein je links met http://url2s.nl

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!

Maak een account aan Login

ICT Nieuws

  • Fijne feestdagen

    tcbhome 28 december 2025 om 13:55
  • Kritieke update voor Really Simple Security-plug-in

    K.Rens 16 november 2024 om 16:12
  • ING Nederland streeft naar ondersteuning van Google Pay tegen eind februari

    K.Rens 2 november 2024 om 16:09

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design