login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Kop Of Munt: Hoe score resetten? (Opgelost)

Offline voltrex - 27/02/2009 18:39 (laatste wijziging 27/02/2009 18:41)
Avatar van voltrexLid Ik heb deze tutorial gevolgt: http://www.site...mp;id=1128.
Nu wil ik een button maken met 'Reset je score'. Hoe doe je dat?
Waarschijnlijk is dit niet moeilijk maar ik ben nog maar een beginner  .

De volledige code van het tutorial:
  1. <?php
  2. ob_start(); // starten van headers + sessies
  3. ?>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  5. <html xmlns="http://www.w3.org/1999/xhtml">
  6. <head>
  7. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  8. <title>Kop / Munt</title>
  9. </head>
  10.  
  11. <body>
  12. <form method="post" action="">
  13. <input type="submit" name="kop" value="Ik denk dat het kop is" />
  14. <input type="submit" name="munt" value="Ik denk dat het munt is" />
  15. </form>
  16.  
  17. <?php
  18. if(isset($_SESSION['goed']) && isset($_SESSION['fout'])) // Kijken of de sessies bestaan, anders worden ze overschreven.
  19. {
  20. if($_SESSION['fout'] == 20) // Als je 20 fouten hebt worden de gegevens gewist
  21. {
  22. $_SESSION['goed'] = 0; // Leeghalen
  23. $_SESSION['fout'] = 0;
  24. echo 'Je hebt het maximale aantal fouten bereikt. Je gegevens zijn gewist!';
  25. }
  26. else
  27. {
  28. if($_SERVER['REQUEST_METHOD'] == "POST") // Als er op een knop gedrukt is
  29. {
  30. $true_false = rand(1,2); // Genereer 1 of 2
  31.  
  32. if($true_false == 1 && isset($_POST['kop'])) // Als er 1 uitkwam, en je drukte op kop is het goed
  33. {
  34. echo 'Je hebt het goed! Het was kop!';
  35. $_SESSION['goed']++; // Bijtellen van een punt
  36. }
  37. elseif($true_false == 2 && isset($_POST['munt'])) // Als het 2 was en je drukte op munt was het ook goed
  38. {
  39. echo 'Je hebt het goed! Het was munt!';
  40. $_SESSION['goed']++; // Bijtellen punt
  41. }
  42. else
  43. {
  44. echo 'Je hebt het fout! Het moest zijn: '; // Anders zijn er geen combinaties meer over, dus heb je het fout.
  45. if($true_false == 1) // 1 = kop, dus als kop niet 1 is is het munt want het moet een 1 of een 2 zijn.
  46. {
  47. echo 'Kop!';
  48. }
  49. else
  50. {
  51. echo 'Munt!';
  52. }
  53. $_SESSION['fout']++; // Fout bijtellen.
  54.  
  55. }
  56. }
  57. }
  58. }
  59. else
  60. {
  61. $_SESSION['goed'] = 0; // Dit betrekt zich weer tot bovenaan --> Als die sessies niet bestaan worden ze hier gezet (dus eerste keer als je pagina opent)
  62. $_SESSION['fout'] = 0;
  63. }
  64.  
  65. echo "<br><br>Aantal keren goed: ".$_SESSION['goed']."<br>"; // Echoen van de score
  66. echo "Aantal keren fout: ".$_SESSION['fout']." ";
  67. ?>
  68. </body>
  69. </html>


Voltrex

Citaat:
Sliphead Edit: [ code=php] [/ code] gebruiken voor PHP code in plaats van [ php] tags  

7 antwoorden

Gesponsorde links
Offline Koen - 27/02/2009 18:42
Avatar van Koen PHP expert De sessies wissen?
  1. $_SESSION = array();
Offline Wim - 27/02/2009 18:43
Avatar van Wim Crew algemeen dat gebeurd op lijn 23 en 24 toch ook al? Kan je gewoon kopieren...
Offline voltrex - 27/02/2009 18:47
Avatar van voltrex Lid Ok, nu waarschijnlijk stomme vraag: Hoe moet ik dan een button maken waar je moet op klikken om die code uit te voeren (degene die Sliphead net zei)..

(CODE=

#
session_destroy();

#
$_SESSION = array();

)
Offline Koen - 27/02/2009 18:50
Avatar van Koen PHP expert <a href="?reset=true">reset score</a>

  1. <?php
  2. if(isset($_GET['reset']))
  3. {
  4. $_SESSION['goed'] = 0;
  5. $_SESSION['fout'] = 0;
  6. }
  7. ?>


Zoiets misschien? 
Offline voltrex - 27/02/2009 19:25 (laatste wijziging 27/02/2009 19:36)
Avatar van voltrex Lid Waar moet ik die codes ergens plakken in mijn volledig script (zie eerste reactie).. Want ik plak het ergens en dan bekijk ik mijn pagina en toont hij niets...

EDIT: Ik heb het al gevonden ;) (gewoon nieuw <?php gestart )
Bedankt allemaal!  

- - - - - - - - - - - - - - - - - - - - - - - - - -
Volgend probleem: 
Als ik op 'Reset' duw, (codes gebruikt: zie 2de reactie van Sliphead) en dan terug wil 'spelen' (op kop/munt klikken) en ik heb het dan juist/fout, dan komt het er wel bij (bij score). Maar als ik dan nog eens op kop/munt klik, reset het automatisch opnieuw en zie ik alleen of ik het deze keer juist/fout had... Iemand een idee hoe ik dat kan verhelpen?  
Offline Koen - 27/02/2009 19:40
Avatar van Koen PHP expert
  1. <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">


Doen, anders post hij het formulier naar pagina?reset=true, waardoor je sessies weer gereset worden!
Offline voltrex - 27/02/2009 19:47 (laatste wijziging 27/02/2009 19:50)
Avatar van voltrex Lid Gevonden! Bedankt!  
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.237s