PHP gevorderde |
|
Dit heb ik nu:
<?php
session_start();
$iHighestValue = 1000;
$iLowestValue = 0;
if(!isset($_GET['sDo']))
{
$_GET['sDo'] = 'start';
}
if($_GET['sDo'] == 'start')
{
if(!isset($_SESSION['iNumber']))
{
echo 'Random nummer wordt gemaakt...<br />' . "\n";
$_SESSION['iNumber'] = rand($iLowestValue, $iHighestValue);
echo 'Je kunt beginnen met raden, door <a href="hogerlager.php?sDo=guess">hier</a> te klikken.<br />' . "\n";
}
else
{
if($_SERVER['REQUEST_METHOD'] != 'POST')
{
?>
<form action="hogerlager.php?sDo=start" method="post">
Er is al een random nummer... Wil je die resetten?<br />
<input name="sResetNumber" type="submit" value="Ja" />
<input name="sResetNumber" type="submit" value="Nee" />
</form>
<?php
}
else
{
if($_POST['sResetNumber'] == 'Ja')
{
unset($_SESSION['iNumber']);
echo 'Nummer is gereset, klik <a href="hogerlager.php?sDo=start">hier</a> om opnieuw te beginnen.<br />' . "\n";
}
else
{
echo 'Nummer is niet gereset.. Klik <a href="hogerlager.php?sDo=guess">hier</a> om te gaan raden.<br />' . "\n";
}
}
}
}
elseif($_GET['sDo'] == 'guess')
{
if(!isset($_SESSION['iNumGuesses']))
{
$_SESSION['iNumGuesses'] = 0;
}
if(isset($_SESSION['iNumber']))
{
?>
<form action="hogerlager.php?sDo=guess" method="post">
Ik raad: <input name="iGuessed" type="text" value="<?php echo htmlspecialchars(@$_POST['iGuessed']); ?>" /><br />
<input type="submit" value="Raden!" />
</form>
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$_POST['iGuessed'] = intval($_POST['iGuessed']);
if($_POST['iGuessed'] == $_SESSION['iNumber'])
{
echo 'Je hebt het nummer geraden in ' . (isset($_SESSION['iNumGuesses']) ? $_SESSION['iNumGuesses'] : 0) . ' keer!<br />' . "\n";
unset($_SESSION['iNumber']);
unset($_SESSION['iNumGuesses']);
echo 'Klik <a href="hogerlager.php?sDo=start">hier</a> om opnieuw te beginnen<br />' . "\n";
}
else
{
echo 'Je hebt het nummer niet geraden, helaas! Het nummer is ';
if($_POST['iGuessed'] > $_SESSION['iNumber'])
{
echo 'kleiner dan';
}
else
{
echo 'groter dan';
}
$_SESSION['iNumGuesses'] = (isset($_SESSION['iNumGuesses']) ? ($_SESSION['iNumGuesses'] + 1) : 1);
echo ' ' . $_POST['iGuessed'] . ' (in totaal al ' . $_SESSION['iNumGuesses']. ' keer geraden)';
}
}
}
else
{
echo 'Je hebt nog geen nummer.... Klik <a href="hogerlager.php?sDo=start">hier</a> om er een te maken.<br />' . "\n";
}
}
else
{
echo 'Deze actie wordt niet toegelaten.. <a href="hogerlager.php?sDo=start">Ga terug naar het begin</a>.<br />' . "\n";
}
?>
<?php $iHighestValue = 1000; $iLowestValue = 0; { $_GET['sDo'] = 'start'; } if($_GET['sDo'] == 'start') { if(!isset($_SESSION['iNumber'])) { echo 'Random nummer wordt gemaakt...<br />' . "\n"; $_SESSION['iNumber'] = rand($iLowestValue, $iHighestValue); echo 'Je kunt beginnen met raden, door <a href="hogerlager.php?sDo=guess">hier</a> te klikken.<br />' . "\n"; } else { if($_SERVER['REQUEST_METHOD'] != 'POST') { ?> <form action="hogerlager.php?sDo=start" method="post"> Er is al een random nummer... Wil je die resetten?<br /> <input name="sResetNumber" type="submit" value="Ja" /> <input name="sResetNumber" type="submit" value="Nee" /> </form> <?php } else { if($_POST['sResetNumber'] == 'Ja') { unset($_SESSION['iNumber']); echo 'Nummer is gereset, klik <a href="hogerlager.php?sDo=start">hier</a> om opnieuw te beginnen.<br />' . "\n"; } else { echo 'Nummer is niet gereset.. Klik <a href="hogerlager.php?sDo=guess">hier</a> om te gaan raden.<br />' . "\n"; } } } } elseif($_GET['sDo'] == 'guess') { if(!isset($_SESSION['iNumGuesses'])) { $_SESSION['iNumGuesses'] = 0; } if(isset($_SESSION['iNumber'])) { ?> <form action="hogerlager.php?sDo=guess" method="post"> Ik raad: <input name="iGuessed" type="text" value=" <?php echo htmlspecialchars(@$_POST['iGuessed']); ?>" /><br /> <input type="submit" value="Raden!" /> </form> <?php if($_SERVER['REQUEST_METHOD'] == 'POST') { $_POST['iGuessed'] = intval($_POST['iGuessed']); if($_POST['iGuessed'] == $_SESSION['iNumber']) { echo 'Je hebt het nummer geraden in ' . (isset($_SESSION['iNumGuesses']) ? $_SESSION['iNumGuesses'] : 0) . ' keer!<br />' . "\n"; unset($_SESSION['iNumber']); unset($_SESSION['iNumGuesses']); echo 'Klik <a href="hogerlager.php?sDo=start">hier</a> om opnieuw te beginnen<br />' . "\n"; } else { echo 'Je hebt het nummer niet geraden, helaas! Het nummer is '; if($_POST['iGuessed'] > $_SESSION['iNumber']) { } else { } $_SESSION['iNumGuesses'] = (isset($_SESSION['iNumGuesses']) ? ($_SESSION['iNumGuesses'] + 1) : 1); echo ' ' . $_POST['iGuessed'] . ' (in totaal al ' . $_SESSION['iNumGuesses']. ' keer geraden)'; } } } else { echo 'Je hebt nog geen nummer.... Klik <a href="hogerlager.php?sDo=start">hier</a> om er een te maken.<br />' . "\n"; } } else { echo 'Deze actie wordt niet toegelaten.. <a href="hogerlager.php?sDo=start">Ga terug naar het begin</a>.<br />' . "\n"; } ?>
Het is nog niet helemaal vlekkeloos, maar het werkt al aardig... Noem het bestand hogerlager.php en dan kun je beginnen.
Moet er ook nog een highscore-optie in ofzo? Als je dat wilt, moet je even zeggen waar je die scores dan wilt laten (MySQL-tabel bijv.).
EDIT: Klein foutje in een link. |