• 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

Training probleem

  • speedwars
  • 22 september 2015 om 14:32
  • speedwars
    Beginner
    Berichten
    7
    • 22 september 2015 om 14:32
    • #1

    Hallo allemaal,

    Ik ben bezig met een site voor een maat van me. Nu hoefde ik de code niet te vernieuwen... maar nu heb ik een probleem in dit script.

    Hieronder vind je trainen.php, dit script moet een tijd in de database zetten. Wat doet dit script nou, hij zet de tijd op 5 uur terug in plaats van de ingegeven minuten voor uit.

    Hoe kan ik dit fixen?

    PHP: trainen.php
    <?php
    $messload = TRUE;
    include("page_top_s-g.php");
    
    
    $area = $_GET['area'];
    $trainen = strtotime($data['trainen_end_time']);
    
    
       if($trainen > time()){
       $minuten = floor(($trainen-time())/60);
       $minuten = ($minuten == 1) ? $minuten.' minuut en '.(($trainen-time())-($minuten*60)).' seconden' : $minuten.' minuten en '.(($trainen-time())-($minuten*60)).' seconden';
       $tijd = (($trainen-time()) <= 60) ? ($trainen-time()).' seconden' : $minuten;
    
    
       confirm_box('Trainen', "Je bent nog $tijd bezig met een training!", '', $_SERVER['SCRIPT_NAME'].'?area='.$area);
       }
    
    
       if(!preg_match('/^[1-2]$/', $area))
       confirm_box('Trainen', 'Error', 'red');
    
    
    
    
    
    
       if(preg_match('/^[0-9]$/', $_POST['training'])){
    
    
       $training = $_POST['training'];
    
    
          if($training == 1 && $area == 1){
          $tijd = (60*5);
          $skill = 2;
          } else if($training == 2 && $area == 1){
          $tijd = (60*10);
          $skill = 4;
          } else if($training == 3 && $area == 1){
          $tijd = (60*15);
          $skill = 6;
          } else if($training == 1 && $area == 2){
          $tijd = (60*5);
          $skill = 2;
          } else if($training == 2 && $area == 2){
          $tijd = (60*10);
          $skill = 4;
          } else if($training == 3 && $area == 2){
          $tijd = (60*15);
          $skill = 6;
          } else if($training == 4 && $area == 2){
          $tijd = (60*20);
          $skill = 8;
          }
    
    
          if($area && $tijd && $skill){
          mysql_query("update `[users]` set `training{$area}`=`training{$area}`+$skill, trainen_end_time=DATE_ADD(NOW(), INTERVAL {$tijd} SECOND) where login='{$data['login']}'");
    
    
          $tijd = ($tijd/60);
    
    
          confirm_box('Training', "Je gaat nu trainen voor $tijd minuten.", '', $_SERVER['SCRIPT_NAME'].'?area='.$area);
          }
    
    
    } else {
    
    
    $titel = ($area == 1) ? 'auto stelen' : 'misdaad';
    
    
    echo "<form method='post'>\n".
         "<table align='center' cellspacing='0' width='400'>\n".
         "<tr><td class='subTitle' colspan='2'><b>Trainen voor $titel</b></td></tr>\n\n".
         "<tr><td class='subTitle'><b>Activiteit</b></td> <td class='subTitle'><b>Tijd</b></td></tr>\n";
    
    
    if($area == 1){
    print <<<END
    <tr><td class='mainTxt' width='60%'><input type="radio" value="1" name="training"> Slot breken.</td> <td class='mainTxt' width='40%'>5 Min.</td></tr>
    <tr><td class='mainTxt'><input type="radio" value="2" name="training"> Auto starten.</td><td class=mainTxt>10 Min.</td></tr>
    <tr><td class='mainTxt'><input type="radio" value="3" name="training"> Alarm uitschakelen.</td><td class=mainTxt>15 Min.</td></tr>
    END;
    } else if($area == 2){
    print <<<END
    <tr><td class='mainTxt' width='60%'><input type='radio' value='1' name='training'> Dealen.</td>   <td class='mainTxt' width='40%'>5 Min.</td></tr>
    <tr><td class='mainTxt'><input type='radio' value='2' name='training'> Zakkenrollen oefenen.</td> <td class='mainTxt'>10 Min.</td></tr>
    <tr><td class='mainTxt'><input type='radio' value='3' name='training'> Kassa Openen.</td>         <td class='mainTxt'>15 Min.</td></tr>
    <tr><td class='mainTxt'><input type='radio' value='4' name='training'> Slot forceren.</td>        <td class='mainTxt'>20 Min.</td></tr>
    END;
    }
    
    
    echo "<tr><td align='center' class='mainTxt' colspan='2'><input type='submit' value=' Trainen! '></td></tr>\n".
         "</table>\n".
         "</form>\n\n".
         "</body>\n".
         "</html>";
    
    
    }
    ?>
    Toon Meer
  • WHMCSAddons
    Master
    Ontvangen Reacties
    88
    Berichten
    2.411
    • 22 september 2015 om 18:13
    • #2

    Zie enkele dingen, waaronder ook fouten die de veiligheid schaden.

    1) $_GET wordt zomaar geaccepteerd in een database query, niet slim.
    2) De mysql_ functie wordt niet meer ondersteund door veel hosting partijen, kan je beter updaten.

  • Thisguyisgone
    Elite members
    Ontvangen Reacties
    197
    Berichten
    7.880
    • 22 september 2015 om 18:33
    • #3

    Als het 5 uur terug is, zou je server tijd dan goed staan ?

  • FangorN
    Professional
    Ontvangen Reacties
    196
    Articles
    2
    Berichten
    737
    • 22 september 2015 om 19:36
    • #4

    - werk met één tijdslijn, je gebruikt nu twee "klokken": time() (PHP) en NOW() (MySQL); mogelijk staan beide klokken niet gelijk, kies een van de twee (PHP of MySQL) die bepaalt hoe laat het is

    - werk ook met één (eenduidige) tijdszone, mogelijk wordt in PHP een hele andere tijdszone gebruikt dan in MySQL, dus zelfs als je één klok gebruikt kan dit toch verschillende betekenissen hebben (een tijd kan op verschillende manieren geinterpreteerd worden) afhankelijk van hoe/waar je hier naar kijkt

    Verder staat er geen enkele regel commentaar in bovenstaande code die aangeeft hoe deze zou moeten werken en maakt deze -zoals eerder aangegeven- gebruik van verouderde functies en onveilige constructies. Ik denk daarom dat het niet echt de moeite loont om hier "quick fixes" in uit te voeren, te meer omdat op andere plaatsen waarschijnlijk soortgelijke problemen spelen - de oplossingen die je toepast in deze code zou je dan ook op andere plaatsen moeten toepassen om er verzekerd van te zijn dat alles in de pas loopt.

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