php session

This commit is contained in:
Adrien MALINGREY 2020-11-13 13:10:56 +01:00
parent bda833f6e3
commit 58c50f0e1d
6 changed files with 61 additions and 57 deletions

View File

@ -1,6 +1,6 @@
<?php
require("classes.php");
session_start();
$grid = new Grid();
$grid->generate();
header("Location: ".$_SERVER["REQUEST_SCHEME"]."://".$_SERVER["HTTP_HOST"].dirname($_SERVER["DOCUMENT_URI"])."/".$grid->toString());

View File

@ -1,32 +1,33 @@
<?php
$gridStr = strip_tags($_GET['grid']);
session_start();
$currentGrid = $_SESSION["currentGrid"];
?>
{
"short_name": "Sudoku",
"name": "Sudoku",
"description": "Remplissez la grille de sorte que chaque ligne, colonne et région (carré de 3×3 cases) contienne tous les chiffres de 1 à 9.",
"icons": [{
"src": "thumbnail.png?grid=<?=$gridStr?>&size=48",
"src": "thumbnail.png?size=48",
"sizes": "48x48",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=<?=$gridStr?>&size=72",
"src": "thumbnail.png?size=72",
"sizes": "72x72",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=<?=$gridStr?>&size=96",
"src": "thumbnail.png?size=96",
"sizes": "96x96",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=<?=$gridStr?>&size=144",
"src": "thumbnail.png?size=144",
"sizes": "144x144",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=<?=$gridStr?>&size=168",
"src": "thumbnail.png?size=168",
"sizes": "168x168",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=<?=$gridStr?>&size=192",
"src": "thumbnail.png?size=192",
"sizes": "192x192",
"type": "image/png"
}],
@ -41,29 +42,29 @@
"name": "Sudoku : cette grille",
"short_name": "Ce sudoku",
"description": "Continuer cette grille de sudoku",
"url": "<?=$gridStr?>",
"url": "<?=$currentGrid?>",
"icons": [{
"src": "thumbnail.png?grid=<?=$gridStr?>&size=48",
"src": "thumbnail.png?size=48",
"sizes": "48x48",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=<?=$gridStr?>&size=72",
"src": "thumbnail.png?size=72",
"sizes": "72x72",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=<?=$gridStr?>&size=96",
"src": "thumbnail.png?size=96",
"sizes": "96x96",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=<?=$gridStr?>&size=144",
"src": "thumbnail.png?size=144",
"sizes": "144x144",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=<?=$gridStr?>&size=168",
"src": "thumbnail.png?size=168",
"sizes": "168x168",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=<?=$gridStr?>&size=192",
"src": "thumbnail.png?size=192",
"sizes": "192x192",
"type": "image/png"
}]
@ -74,27 +75,27 @@
"description": "Grille de sudoku vierge",
"url": ".................................................................................",
"icons": [{
"src": "thumbnail.png?grid=.................................................................................&size=48",
"src": "thumbnail.png?size=48",
"sizes": "48x48",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=.................................................................................&size=72",
"src": "thumbnail.png?size=72",
"sizes": "72x72",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=.................................................................................&size=96",
"src": "thumbnail.png?size=96",
"sizes": "96x96",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=.................................................................................&size=144",
"src": "thumbnail.png?size=144",
"sizes": "144x144",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=.................................................................................&size=168",
"src": "thumbnail.png?size=168",
"sizes": "168x168",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=.................................................................................&size=192",
"src": "thumbnail.png?size=192",
"sizes": "192x192",
"type": "image/png"
}]
@ -105,27 +106,27 @@
"description": "Nouvelle grille de sudoku",
"url": ".",
"icons": [{
"src": "thumbnail.png?grid=.528.3....4.9.1...39.562......73.129...1.64.7...42.3656.13.5...28.6.4...4.5287...&size=48",
"src": "thumbnail.png?size=48",
"sizes": "48x48",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=.528.3....4.9.1...39.562......73.129...1.64.7...42.3656.13.5...28.6.4...4.5287...&size=72",
"src": "thumbnail.png?size=72",
"sizes": "72x72",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=.528.3....4.9.1...39.562......73.129...1.64.7...42.3656.13.5...28.6.4...4.5287...&size=96",
"src": "thumbnail.png?size=96",
"sizes": "96x96",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=.528.3....4.9.1...39.562......73.129...1.64.7...42.3656.13.5...28.6.4...4.5287...&size=144",
"src": "thumbnail.png?size=144",
"sizes": "144x144",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=.528.3....4.9.1...39.562......73.129...1.64.7...42.3656.13.5...28.6.4...4.5287...&size=168",
"src": "thumbnail.png?size=168",
"sizes": "168x168",
"type": "image/png"
}, {
"src": "thumbnail.png?grid=.528.3....4.9.1...39.562......73.129...1.64.7...42.3656.13.5...28.6.4...4.5287...&size=192",
"src": "thumbnail.png?size=192",
"sizes": "192x192",
"type": "image/png"
}]

View File

@ -13,7 +13,7 @@ location /sudoku/ {
try_files $uri =404;
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass unix:/var/run/php/php7.3-fpm-sudoku.sock;
fastcgi_index gen-grid.php;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param REMOTE_USER $remote_user;
fastcgi_param PATH_INFO $fastcgi_path_info;

View File

@ -1,5 +1,6 @@
<?php
$location = strip_tags($_GET['location']);
session_start();
$currentGrid = $_SESSION["currentGrid"];
header ("Content-type: application/javascript");
?>
/*
@ -20,7 +21,7 @@ Copyright 2015, 2019, 2020 Google LLC. All Rights Reserved.
const OFFLINE_VERSION = 1;
const CACHE_NAME = "offline";
// Customize this with a different URL if needed.
const OFFLINE_URL = "<?=$location?>";
const OFFLINE_URL = "<?=$currentGrid?>";
self.addEventListener("install", (event) => {
event.waitUntil(

View File

@ -1,7 +1,8 @@
<?php
const UNKNOWN = ".";
$gridStr = strip_tags($_GET['grid']);
require("classes.php");
session_start();
$currentGrid = strip_tags($_GET['grid']);
$_SESSION["currentGrid"] = $currentGrid;
?>
<!DOCTYPE html>
<html lang='fr' prefix="og: https://ogp.me/ns#">
@ -11,24 +12,24 @@
<title>Sudoku</title>
<link rel='stylesheet' type='text/css' href='style.css' />
<script src='sudoku.js'></script>
<link rel="apple-touch-icon" href="thumbnail.png?grid=<?=$gridStr?>&size=57" sizes="57x57">
<link rel="apple-touch-icon" href="thumbnail.png?grid=<?=$gridStr?>&size=114" sizes="114x114">
<link rel="apple-touch-icon" href="thumbnail.png?grid=<?=$gridStr?>&size=72" sizes="72x72">
<link rel="apple-touch-icon" href="thumbnail.png?grid=<?=$gridStr?>&size=144" sizes="144x144">
<link rel="apple-touch-icon" href="thumbnail.png?grid=<?=$gridStr?>&size=60" sizes="60x60">
<link rel="apple-touch-icon" href="thumbnail.png?grid=<?=$gridStr?>&size=120" sizes="120x120">
<link rel="apple-touch-icon" href="thumbnail.png?grid=<?=$gridStr?>&size=76" sizes="76x76">
<link rel="apple-touch-icon" href="thumbnail.png?grid=<?=$gridStr?>&size=152" sizes="152x152">
<link rel="icon" type="image/png" href="thumbnail.png?grid=<?=$gridStr?>&size=196" sizes="196x196">
<link rel="icon" type="image/png" href="thumbnail.png?grid=<?=$gridStr?>&size=160" sizes="160x160">
<link rel="icon" type="image/png" href="thumbnail.png?grid=<?=$gridStr?>&size=96" sizes="96x96">
<link rel="icon" type="image/png" href="thumbnail.png?grid=<?=$gridStr?>&size=16" sizes="16x16">
<link rel="icon" type="image/png" href="thumbnail.png?grid=<?=$gridStr?>&size=32" sizes="32x32">
<link rel="manifest" href="manifest.json?grid=<?=$gridStr?>">
<link rel="apple-touch-icon" href="thumbnail.png?size=57" sizes="57x57">
<link rel="apple-touch-icon" href="thumbnail.png?size=114" sizes="114x114">
<link rel="apple-touch-icon" href="thumbnail.png?size=72" sizes="72x72">
<link rel="apple-touch-icon" href="thumbnail.png?size=144" sizes="144x144">
<link rel="apple-touch-icon" href="thumbnail.png?size=60" sizes="60x60">
<link rel="apple-touch-icon" href="thumbnail.png?size=120" sizes="120x120">
<link rel="apple-touch-icon" href="thumbnail.png?size=76" sizes="76x76">
<link rel="apple-touch-icon" href="thumbnail.png?size=152" sizes="152x152">
<link rel="icon" type="image/png" href="thumbnail.png?size=196" sizes="196x196">
<link rel="icon" type="image/png" href="thumbnail.png?size=160" sizes="160x160">
<link rel="icon" type="image/png" href="thumbnail.png?size=96" sizes="96x96">
<link rel="icon" type="image/png" href="thumbnail.png?size=16" sizes="16x16">
<link rel="icon" type="image/png" href="thumbnail.png?size=32" sizes="32x32">
<link rel="manifest" href="manifest.json">
<meta property="og:title" content="Sudoku"/>
<meta property="og:type" content="website"/>
<meta property="og:url" content="<?=$_SERVER["REQUEST_SCHEME"]."://".$_SERVER["HTTP_HOST"].$_SERVER["DOCUMENT_URI"]?>"/>
<meta property="og:image" content="<?=$_SERVER["REQUEST_SCHEME"]."://" . $_SERVER["HTTP_HOST"].dirname($_SERVER["DOCUMENT_URI"])?>/thumbnail.png?grid=<?=$gridStr?>&size=200"/>
<meta property="og:image" content="<?=$_SERVER["REQUEST_SCHEME"]."://".$_SERVER["HTTP_HOST"].dirname($_SERVER["DOCUMENT_URI"])?>/thumbnail.png?size=200"/>
<meta property="og:image:width" content="200"/>
<meta property="og:image:height" content="200"/>
<meta property="og:description" content="Remplissez la grille de sorte que chaque ligne, colonne et région (carré de 3×3 cases) contienne tous les chiffres de 1 à 9."/>
@ -48,7 +49,7 @@
<tr>
<?php
for ($column = 0; $column < 9; $column++) {
$value = $gridStr[9*$row+$column];
$value = $currentGrid[9*$row+$column];
if ($value == UNKNOWN) {
?>
<td><input type='number' min='1' max='9' step='1' value='' title='Valeurs possibles [Clic-droit]'/></td>

View File

@ -1,7 +1,8 @@
<?php
require("classes.php");
session_start();
$currentGrid = $_SESSION["currentGrid"];
header ("Content-type: image/png");
const UNKNOWN = ".";
$gridStr = strip_tags($_GET['grid']);
$size = (int) $_GET['size'];
$thumbnail = imagecreate($size, $size);
$transparent = imagecolorallocate($thumbnail, 1, 1, 1);
@ -25,7 +26,7 @@
$x = $start;
$y = $start;
$boxSizeMinusOne = $boxSize - 1;
foreach(str_split($gridStr) as $i => $value) {
foreach(str_split($_SESSION["currentGrid"]) as $i => $value) {
if ($i % 3 == 0) $x++;
if ($i % 27 == 0) $y++;
if ($value == UNKNOWN) {
@ -58,7 +59,7 @@
$x = $start + 1;
$y = $start + 1;
$boxSizeMinusTwo = $boxSize - 2;
foreach(str_split($gridStr) as $i => $value) {
foreach(str_split($_SESSION["currentGrid"]) as $i => $value) {
if ($value == UNKNOWN) {
$bgColor = $white;
} else {
@ -93,7 +94,7 @@
$x = $start + 1;
$y = $start + 1;
$boxSizeMinusTwo = $boxSize - 2;
foreach(str_split($gridStr) as $i => $value) {
foreach(str_split($_SESSION["currentGrid"]) as $i => $value) {
if ($value == UNKNOWN) {
$bgColor = $white;
} else {