Door
Onbekende gebruiker
op 01-10-2004 10:42
gewijzigd op 02-10-2004 09:40
731 views
ik probeer een "nummergame" in php te maken...het script moet zelf een nummer uit kiezen onder de 10...
ik heb 'rand (1,10)' in het script neer gezet...maar hij doe t niet...
als alles goed gaat...zou het script bij een groter getal dan 10 iets moeten zggen van: 'voer een getal tussen de 1 en de 10 in...
en bij goed en fout wat anders....wat het nu doet is bij 10+ getallen en die tekst weergeven...en die van het foute getal...
en ik snap niet wat ik fout gedaan heb...ik ook maar een beginner maar goed ;)
zouden jullie is willen kijken? en zeggen wat er fout aan is...
dit is wat ik heb:
<?php
$getal=rand (1, 10);
if ($invoer==$getal)
{
echo ("Goed zo, dat was het juiste nummer!");
}
else
{
echo ("Jammer, het juiste nummer was: $getal, volgende keer beter");
}
if ($invoer >= 10)
{
echo ("<br> Voer een getal tussen de 1 en de 10 in");
}
?>
dan moet je eerst even voor get:
$invoer = $_GET["invoer"];
of voor post
$invoer = $_POST["invoer"];
boven de if($invoer == $getal) zetten dan zou hij moeten werken.
en echo hoeft niet tussen haakjes*( )* en je moet de variabele uit de quotes halen dus dan word je script:
<?php
$getal=rand (1, 10);
$invoer = $_GET["invoer"];
if ($invoer==$getal)
{
echo "Goed zo, dat was het juiste nummer!";
}
else
{
echo "Jammer, het juiste nummer was:" . $getal . ", volgende keer beter";
}
if ($invoer >= 10)
{
echo "<br> Voer een getal tussen de 1 en de 10 in";
}
?>
dan zou hij het moeten doen, zoniet moet je even in je formulier in invoer.html kijken of het veld waar je het getal invoert wel "invoer" heet!
en nu doet het helemaal raar...nu geeft het bij alles jammer, volgende keer beter aan...
regards
FireSnake
?
Onbekende gebruiker
01-10-2004 13:33
Ik ben geen lid van dit forum maar aangezien ik zelf wel eens een vraagje heb gesteld zal ik ook maar eens een antwoord geven. Volgens mij is het script technisch gezien goed, alleen het script is niet het script dat jij wil hebben.
Dit script kijkt namelijk of de invoer gelijk is aan het getal. ALS dat niet zo is, dan staat er "volgende keer beter".
Daarna kijkt het script of het getal groter is dan 10. ALS dat zo is, dan komt er te staan "voer een getal 1-10 in".
Maar als je een getal invoert dat groter is dan 10, voldoet dat dus aan TWEE voorwaarden. (i) het getal is niet gelijk aan de invoer, (ii) het getal is groter dan 10. Er komen dan dus 2 teksten te staan; het getal is niet goed EN het getal is te groot.
Dus doe het volgende om het op te lossen:
<?php
$getal=rand (1, 10);
$invoer = $_GET["invoer"];
if ($invoer >= 1 AND $invoer <= 10)
{
if ($invoer==$getal)
{
echo "Goed zo, dat was het juiste nummer!";
}
else
{
echo "Jammer, het juiste nummer was:" . $getal . ", volgende keer beter";
}
}
else
{
echo "<br> Voer een getal tussen de 1 en de 10 in";
}
?>