• 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

  • 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
  • Van een pixelige afbeelding naar een strakke, moderne website

    Syntax 21 december 2025 om 17:05

Script elke 2000 query uitvoeren

  • tcbhome
  • 3 februari 2013 om 12:51
  • tcbhome
    Intermediate
    Ontvangen Reacties
    2
    Berichten
    516
    • 3 februari 2013 om 12:51
    • #1

    Beste,

    Ik ben opzoek naar een script dat elke 2000 een query uitvoerd maar die 2000 kan ook meer zijn dan 2000.

    Voorbeeld als een speler bepaald aantal xp heeft gehaald dan krijgt hij credits na elke 2000 xp.
    en dit kan onbeperkt voor gaan.

    Maar hoe kan ik dit nu best in php verwerken?

    Mvg

    StreetMaffia.be - Banditi.be - GunMaffia.be - Mijn-Maffia.com

  • Tim
    Enlightened
    Ontvangen Reacties
    77
    Berichten
    3.686
    • 3 februari 2013 om 12:59
    • #2

    Hallo,

    Maak een functie hiervoor?
    check_xp()
    if(sth > 2000)
    do_query

    Mvg,
    Tim

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

  • tcbhome
    Intermediate
    Ontvangen Reacties
    2
    Berichten
    516
    • 3 februari 2013 om 13:03
    • #3

    Bedankt voor je reactie maar heb dit al geprobeerd als ik

    if($data['xp'] > 2000)
    {
    query
    }

    dan blijft hij dit uitvoeren en dit is de bedoeling niet.

    Mvg

    StreetMaffia.be - Banditi.be - GunMaffia.be - Mijn-Maffia.com

  • J.Rijdes
    Elite members
    Ontvangen Reacties
    37
    Berichten
    1.581
    • 3 februari 2013 om 13:08
    • #4

    Natuurlijk moet je dan de XP ook weer op 0 zetten lijkt me?

    Of bedoel je dat als hij 2000 xp heeft een query moet uitvoeren, als hij 4000 heeft etc.?

  • tcbhome
    Intermediate
    Ontvangen Reacties
    2
    Berichten
    516
    • 3 februari 2013 om 13:11
    • #5

    Ja idd

    dus elke 2000 moet hij query uitvoeren

    xp: 2000 <- Query, 4000 <- query, 6000 <- query ....

    Snap je

    StreetMaffia.be - Banditi.be - GunMaffia.be - Mijn-Maffia.com

  • N. Vermeiren
    Beginner
    Berichten
    36
    • 3 februari 2013 om 13:46
    • #6

    Het is beter te werken met restwaarden.

    if((aantalxp % 2000) == 0){
    //voer de query uit als het getal deelbaar is door tweeduizend
    }

    Omdat dit maar eenmalig mag worden uitgevoerd kan je bijvoorbeeld het aantalxp verhogen met 1..

  • tcbhome
    Intermediate
    Ontvangen Reacties
    2
    Berichten
    516
    • 3 februari 2013 om 15:08
    • #7

    IS eigelijk geen oplossing.

    Ik zal zat te denken met if en elseif maar kan daar zo enorm ver mee gaan dus wil ik niet doen

    Dus hoop dat er nog mensen zijn mee tips...

    StreetMaffia.be - Banditi.be - GunMaffia.be - Mijn-Maffia.com

  • Tim
    Enlightened
    Ontvangen Reacties
    77
    Berichten
    3.686
    • 3 februari 2013 om 15:31
    • #8

    Hallo,

    if(level * 2000 > exp)

    Iets als dat?

    Mvg,
    Tim

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

  • tcbhome
    Intermediate
    Ontvangen Reacties
    2
    Berichten
    516
    • 3 februari 2013 om 15:36
    • #9

    Tim bedankt voor het meedenken. Maar probleem is het level telt niet mee.

    Database ziet er ongeveer zo uit

    XP <- hier komt die 2000 dus.
    LEVEL <- Maar dit blijft nu op maximaal staan want die 2000 xp is alleen voor leden die max level hebben behaald.

    Zou het kunnen in een for loop?
    Ik kan e.v.t extra database rij maken dat iedere keer +1 doet als hij de 2000 haalt dan komt het er ongeveer zo uitzien:

    extra rij - XP
    1 - 2000.
    2 - 4000
    3 - 6000

    Mvg

    StreetMaffia.be - Banditi.be - GunMaffia.be - Mijn-Maffia.com

  • Stefan.J
    Master
    Ontvangen Reacties
    9
    Berichten
    2.358
    • 3 februari 2013 om 16:04
    • #10

    Er zijn meerdere oplossingen hiervoor mogelijk. Je zou kunnen werken met een database trigger. Een andere oplossing is het level ook verhogen op de plek in de code waar je de XP verhoogt.

  • tcbhome
    Intermediate
    Ontvangen Reacties
    2
    Berichten
    516
    • 3 februari 2013 om 16:46
    • #11

    Stefan heb je soms voorbeeld van die database trigger?

    MVvg

    StreetMaffia.be - Banditi.be - GunMaffia.be - Mijn-Maffia.com

  • K.Rens
    Eigenaar
    Ontvangen Reacties
    241
    Berichten
    4.472
    Filebase Entries
    2
    • 3 februari 2013 om 17:10
    • #12

    Voor mysql kun je triggers gebruiken vanaf versie 5.0.2

    Een voorbeeld is volgende code:

    Code
    CREATE TRIGGER updateXP
    BEFORE UPDATE ON `[users]` FOR EACH ROW SET NEW.xp = 100 ;

    Het antwoord van Vermeiren leek me wel te doen wat je wou bereiken?
    Gewoon eerst een ifje, waarbij je kijkt of zijn level het maximum is en dan delen door 2000.
    Als het deelbaar is door 2000, kun je het verhogen?

  • tcbhome
    Intermediate
    Ontvangen Reacties
    2
    Berichten
    516
    • 3 februari 2013 om 17:15
    • #13

    Koen het is niet de XP die moet verhogen,

    Als de speler 2000 xp bereikt krijgt hij een credit of iets anders.

    2000 xp = 1 credit
    4000 xp = 1 credit
    6000 xp = 1 credit

    en zo gaat dit dus verder. Maar aan de xp mag dus niet gekomen worden.
    Ik kan idd eens proberen met die delen eens kijken of ik daar iets mee kan verzinnen.

    StreetMaffia.be - Banditi.be - GunMaffia.be - Mijn-Maffia.com

  • Stefan.J
    Master
    Ontvangen Reacties
    9
    Berichten
    2.358
    • 3 februari 2013 om 17:33
    • #14
    SQL
    CREATE TRIGGER tr_update_level BEFORE UPDATE ON users
    FOR EACH ROW
      BEGIN
        IF FLOOR(NEW.xp % 2000) > FLOOR(OLD.xp % 2000)
          SET NEW.level = NEW.level + 1;
        END IF;
    END;

    Die trigger moet heel erg in de buurt komen.

    http://dev.mysql.com/doc/refman/5.0/en/trigger-syntax.html

  • Stefan.J
    Master
    Ontvangen Reacties
    9
    Berichten
    2.358
    • 3 februari 2013 om 18:16
    • #15
    Citaat van tcbhome

    Bedankt voor je hulp maar krijg het toch niet voor elkaar.

    Ik heb nu dit:


    mysql_query("
    CREATE TRIGGER tr_update_level BEFORE UPDATE ON test
    FOR EACH ROW
    BEGIN
    IF FLOOR(NEW.xp % 50000) > FLOOR(OLD.xp % 50000)
    SET NEW.upgrades = upgrades + '5';
    END IF;
    END;
    ")or die(mysql_error());

    En daardoor krijg ik de volgende foutmelding:
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET NEW.upgrades = upgrades + '5'; END IF; END' at line 5


    Vraagje van waar haal je die tr_update_level?

    Mvg

    Toon Meer

    De trigger wordt gemaakt met een CREATE statement, netzoals een CREATE TABLE statement, deze moet dus slechts één keer worden uitgevoerd. Daarna wordt het gedefinieerde statement in dit geval iedere keer bij een update van de table test uitgevoerd.

    tr_update_level is gewoon de naam van de trigger, dat mag alles zijn.

  • OmGz
    <?=$_SERVER['REMOTE_ADDR']?>
    Berichten
    61
    • 6 februari 2013 om 15:59
    • #16

    Maak een kolom aan met op hoeveel xp je al de query had uitgevoerd. haal dat van je xp af en als het meer is dan 2000?? PROFIT!

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