diff --git a/Grille.php b/Grille.php index 785e58e..82e83d3 100644 --- a/Grille.php +++ b/Grille.php @@ -12,7 +12,6 @@ class Grille implements ArrayAccess { public $lignes = []; public $colonnes = []; public $valide = false; - private $id; public function __construct($hauteur, $largeur) { @@ -100,15 +99,17 @@ class Grille implements ArrayAccess { } } - public function genere($id) { + public function genere() { + session_regenerate_id(); + $id = session_id(); mt_srand(crc32($id)); $grilles = $this->gen_grilles(); $grilles->current(); if ($grilles->valid()) { - $this->save($id); - return true; + $this->save(); + return $id; } else { return false; } @@ -122,8 +123,7 @@ class Grille implements ArrayAccess { return hash('sha256', $string); } - public function save($id) { - session_id($id); + public function save() { session_start(["use_cookies" => false]); $_SESSION["$this->largeur,$this->hauteur"] = implode( @@ -135,7 +135,6 @@ class Grille implements ArrayAccess { $this->grille ) ); - var_dump($_SESSION); } public function load($id) { @@ -143,7 +142,6 @@ class Grille implements ArrayAccess { session_start(["use_cookies" => false]); if (!isset($_SESSION["$this->largeur,$this->hauteur"])) { - var_dump($_SESSION); return false; } diff --git a/index.php b/index.php index 8a2903d..79c7252 100644 --- a/index.php +++ b/index.php @@ -31,8 +31,8 @@ $grille = new Grille($hauteur, $largeur); if (!isset($_GET["grille"])) { do { - $id = uniqid(); - } while (!$grille->genere($id)); + $id = $grille->genere(); + } while (!$id); $_GET["grille"] = $id; header("Location: " . dirname($_SERVER['DOCUMENT_URI']) . "?" . http_build_query($_GET)); @@ -41,9 +41,11 @@ if (!isset($_GET["grille"])) { $id = htmlspecialchars($_GET["grille"]); -$grille_valide = $grille->load($id) || $grille->genere($id); +$grille_valide = $grille->load($id) || $grille->genere(); if ($grille_valide) { + mt_srand(crc32($id)); + $definitions_horizontales = []; for ($y = 0; $y < $hauteur; $y++) { $definitions_horizontales[$y] = [];