Wenn ich meine Spielautomaten laufen, den Jackpot gewinnen, und aktualisieren Sie die Seite oder klicken Sie auf den Button, heißt es:Session - Undefined index
Notice: Undefined index 'gokken'
Aber wenn er wieder aufgefrischt wird, verschwindet der Fehler, bis ich einen neuen Jackpot bekomme.
Warum passiert das?
<?php
session_start();
//session_destroy();
class Player
{
public $name;
public $age;
function __construct()
{
$this->name = 'Harm';
$this->age = 18;
}
public function setName($name)
{
return $this->name = $name;
}
public function setAge($age)
{
return $this->age = $age;
}
public function getAge($age)
{
if ($age < 18)
{
return "U mag niet spelen! <br/>";
} else
{
return 'Welkom ' . $this->name . ', u bent 18 jaar of ouder! <br/><br/>';
}
}
}
$player = new Player();
echo $player->getAge($player->age);
class Gokautomaat
{
public function Automaat()
{
$r1 = rand(0, 1);
$r2 = rand(0, 1);
$r3 = rand(0, 1);
$inzet = 100;
echo $r1 . $r2 . $r3 . '<br/><br/>';
if ($r1 == $r2 && $r3 == $r2)
{
echo 'U heeft de jackpot gewonnen!!<br><br> + €5000 <br/><br/>';
$_SESSION["gokken"] = $_SESSION["gokken"] + 5000;
echo 'Cash: $' . $_SESSION["gokken"];
session_destroy();
} else
{
//$_SESSION["gokken"] = $_SESSION["gokken"];
echo "U heeft niks gewonnen. <br/><br/> Bedrag - €$inzet" . '<br/><br/>';
$_SESSION["gokken"] = $_SESSION["gokken"] - $inzet;
echo 'Cash: €' . $_SESSION["gokken"];
}
}
public function Gokken()
{
if ($_GET["play"])
{
if (!isset($_SESSION["gokken"]))
{
$_SESSION["gokken"] = 1000;
}
echo '<form action=' . $_SERVER['PHP_SELF'] . ' method=get>';
echo '<input type=hidden name=play value=gokken>
<input type=submit value="Gok!"></form>';
} else
{
echo '<form action=' . $_SERVER['PHP_SELF'] . ' method=get>';
echo '<input type=hidden name=play value=gokken>
<input type=submit value="Gok!"></form>';
}
exit();
}
}
$gokautomaat = new Gokautomaat;
echo $gokautomaat->Automaat();
echo $gokautomaat->Gokken();
?>
Sie haben nicht zu nennen session_destroy() aus dem üblichen Code. Bereinigen Sie das $ _SESSION-Array, anstatt die Sitzungsdaten zu zerstören. –