login  Naam:   Wachtwoord: 
Registreer je!
Scripts > PHP > Spellen > Raad het getal


Reacties op het script Raad het getal

Offline  Joel
Gepost op: 01 september 2004 - 18:28
Eigenaar



Maak gebruik van de nieuwe variabelen:

http://www.site...&id=65

dus $_POST['...']

Variabelen buiten de haakjes.

Offline  CelestialCelebi
Gepost op: 05 september 2004 - 08:12
PHP gevorderde



"Notice: Undefined index: antwoord in c:\DownTemp\Server\index.php on line 127

Notice: Undefined variable: bericht in c:\DownTemp\Server\index.php on line 139"

Offline  CelestialCelebi
Gepost op: 05 september 2004 - 08:18
PHP gevorderde



  1. <?php
  2.  
  3. srand((double) microtime() * 100000);
  4.  
  5. $te_raden_getal = rand(1, 10); // wordt maar 1 keer gebruikt, kan dus weg
  6.  
  7. $antwoord = $_POST['antwoord']; // waarom maak je die variabele hier aan en gebruik je niet gewoon $_POST['antwoord']? Weg kan dit dus
  8.  
  9. if ($_SERVER['REQUEST_METHOD'] == 'POST'){ // als er een POST is
  10. $_POST['te_raden_getal'] = intval($_POST['te_raden_getal']);
  11. // wel geinig overigens, je formulier gebruikt method="get" :)
  12. // deze onderstaande teksten kun je aanpassen in wat je maar wilt...
  13. if ($_POST['antwoord'] != $_POST['te_raden_getal']){
  14. echo "Uw getal is helaas niet goed, het juiste antwoord was " . $_POST['te_raden_getal'];
  15. } else {
  16. echo "Uw getal is correct!";
  17. }
  18. }
  19.  
  20. echo $bericht . "<br>"; // hier moest nog een komma achter en dit kan ook weg.. Je doet daarboven gewoon een echo ;)
  21. ?>
  22.  
  23. <form method="GET" action="index.php">
  24. De bedoeling is dat je een getal van 1 t/m 10 invult en als je geluk hebt raad je hem.
  25. <input name="antwoord" value="<?php echo (isset($_POST['antwoord']) ? $_POST['antwoord'] : ''); ?>"><br>
  26. <input type="hidden" name="te_raden_getal" value="<?php echo rand(1, 10); ?>">
  27. <input type="submit" value="Go">
  28. </form>
  29. </body>
  30. </html>


Zoiets zou al beter zijn..

Want we gaan natuurlijk wel kijken of variabelen ook daadwerkelijk bestaan he. ;) En onnodige variabelen hebben helemaal geen nut ($te_raden_getal, $antwoord).

En superglobals...

Offline  nemesiskoen
Gepost op: 02 februari 2005 - 22:26
Gouden medaille

PHP expert




waarom geef je de waarde van het juiste antwoord mee in de html code? dat maakt het spel onnutteloos... je kan zo het antwoord bekijken...

Offline  cracker
Gepost op: 12 maart 2005 - 00:16
Onbekend



zou er niet beter de functie mt_rand(); gebruikt worden ?

Offline  Raptor
Gepost op: 13 april 2007 - 14:58
Nieuw lid



als je het in een hidden zet kan je de waarde nog wel zien in de bron code...

  1. <?php
  2. if (isset($_POST['raadgetal']))
  3. {
  4. $rand = rand(1, 10);
  5. if ($_POST['getal'] <> $rand)
  6. {
  7. echo "Je had het niet goed, het getal was ".$rand.".";
  8. }
  9. else
  10. {
  11. echo "Je had het goed";
  12. }
  13. }
  14. else
  15. {
  16. ?>
  17. <form method="POST">
  18. <input type="text" name="getal" maxlength="2" size="2"><input type="submit" name="raadgetal" value="gok!">
  19. </form>
  20. <?php
  21. }
  22. ?>

zo genereer je het getal pas als een getal is opgegeven... je kan er nog wel wat meer controles in zetten bijv. of er wel wat in het veld "getal" is ingevult en of dat wel getallen zijn... dit was maar ff snel...


Enkel aanvullende informatie, vragen en antwoorden op vragen zijn welkom.
 
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.043s