diff --git a/BACKEND/PHP/tp3.tar.gz b/BACKEND/PHP/tp3.tar.gz new file mode 100644 index 0000000..8571c44 Binary files /dev/null and b/BACKEND/PHP/tp3.tar.gz differ diff --git a/BACKEND/PHP/tp3/chifoumi/css/style.css b/BACKEND/PHP/tp3/chifoumi/css/style.css new file mode 100644 index 0000000..9dc6e4f --- /dev/null +++ b/BACKEND/PHP/tp3/chifoumi/css/style.css @@ -0,0 +1,11 @@ +.center{ + text-align:center; +} +.gagne{ +color:#2E8B57; + +} +.perdu{ + +color:#FF6347; +} diff --git a/BACKEND/PHP/tp3/chifoumi/images/ciseaux.png b/BACKEND/PHP/tp3/chifoumi/images/ciseaux.png new file mode 100644 index 0000000..6862730 Binary files /dev/null and b/BACKEND/PHP/tp3/chifoumi/images/ciseaux.png differ diff --git a/BACKEND/PHP/tp3/chifoumi/images/feuille.png b/BACKEND/PHP/tp3/chifoumi/images/feuille.png new file mode 100644 index 0000000..80bca11 Binary files /dev/null and b/BACKEND/PHP/tp3/chifoumi/images/feuille.png differ diff --git a/BACKEND/PHP/tp3/chifoumi/images/pierre.png b/BACKEND/PHP/tp3/chifoumi/images/pierre.png new file mode 100644 index 0000000..d19d50e Binary files /dev/null and b/BACKEND/PHP/tp3/chifoumi/images/pierre.png differ diff --git a/BACKEND/PHP/tp3/chifoumi/include/jeu.php b/BACKEND/PHP/tp3/chifoumi/include/jeu.php new file mode 100644 index 0000000..19bac10 --- /dev/null +++ b/BACKEND/PHP/tp3/chifoumi/include/jeu.php @@ -0,0 +1,7 @@ + diff --git a/BACKEND/PHP/tp3/chifoumi/index.php b/BACKEND/PHP/tp3/chifoumi/index.php new file mode 100644 index 0000000..9120be4 --- /dev/null +++ b/BACKEND/PHP/tp3/chifoumi/index.php @@ -0,0 +1,52 @@ + + + + + + + + + Chifoumi + + +
+

Pierre, Feuille, Ciseaux

+
+

Choississez votre coup

+ + + +
+ + +
+
+
Votre Coup
+
+
+ +
+
+
+
Celui de l'ordinateur
+
+
+ +
+
+
+

+ + +
+ + diff --git a/BACKEND/PHP/tp4.tar.gz b/BACKEND/PHP/tp4.tar.gz new file mode 100644 index 0000000..fa84a37 Binary files /dev/null and b/BACKEND/PHP/tp4.tar.gz differ diff --git a/BACKEND/PHP/tp4/README.md b/BACKEND/PHP/tp4/README.md new file mode 100644 index 0000000..23c7d90 --- /dev/null +++ b/BACKEND/PHP/tp4/README.md @@ -0,0 +1,73 @@ + +# TP4 : Cookies et sessions en PHP. + +### Ex1. +Complétez le script `index.php` de l'exercice 1 de manière à +mémoriser grâce à un cookie son os préféré (parmi Linux, Windows et +MacOS). Le cookie est valable pendant une minute, et l'os par +défaut est Linux. + +![](./img/cookie.png) +### Ex2. +Le but est de créer un min-jeu de morpion. + +![](./img/ttt.png) + +Les variables de session : +- `grid` : le plateau du jeu. tableau de 9 cases, prennant les valeurs 0 (libre), 1 (joueur 1), 2 (joueur 2). +- `playerTurn` : le joueur qui joue. + +Le script prend en paramètre la variable `pos` : la position du coup joué par le joueur. +### Ex3. +On désire rendre les pages du [tp3](./../tp3) (cinema) accessibles +uniquement à des utilisateur **inscrits au préalable**. + +1. Rajouter à la base une table `user` qui comprend un **login**, +**email** et un **password**. (login est la clé) +2. Ecrire un formulaire d'inscription au site qui comprend les + champs correspondants. Vous enregistrerez dans la base la mot de + passe hashé avec la fonction + [password\_hash](http://php.net/manual/fr/function.password-hash.php) + de php. +3. Faire en sorte que toutes les pages de l'application soient + accessibles **uniquement** si l'utilisateur s'est authentifié. + (utiliser une session) + +Ecrire les scripts ou pages suivants +
+
inscription.php
+
formulaire d'inscription, et qui traite les données du formulaire. +Si le formulaire n'est pas correctement rempli, Il est réaffiché. +(les champs correctes sont conservés !)
+
authentification.html
+
formulaire d'authentification.
+
verification.php
+
traite le formulaire précédent et vérifie si l'utilisateur est +enregistré. En cas de succés, renvoie vers la page d'accueil du +site. Pour éviter des attaques force brute, ajoutez une +temporisation qui ralentira de telles attaques.
+
securite.php
+
morceau de code que vous inclurez systématiquement dans vos pages +que vous voulez rendre accessible uniquement aux utilisateurs dûment +authentifiés. Ce script vérifiera l'existence d'une variable de +session créée lors de la connexion.
+
+Pour permettre l'authentification d'un utilisateur, il faut que +login et le mot de passe conviennent. On compare le hash de +l'utilisateur stocké dans la base avec le hashage calculé du +password soumis lors de l'authentification : + +```php + +``` + diff --git a/BACKEND/PHP/tp4/ex1/css/style.css b/BACKEND/PHP/tp4/ex1/css/style.css new file mode 100644 index 0000000..6492de3 --- /dev/null +++ b/BACKEND/PHP/tp4/ex1/css/style.css @@ -0,0 +1,12 @@ +main>section { +display: flex; + align-items:center; + justify-content:space-between; +} + +section > section { +width: 25%; +} +section > section + section { +width: 50%; +} diff --git a/BACKEND/PHP/tp4/ex1/index.php b/BACKEND/PHP/tp4/ex1/index.php new file mode 100644 index 0000000..670d4a0 --- /dev/null +++ b/BACKEND/PHP/tp4/ex1/index.php @@ -0,0 +1,58 @@ + + + + + + + + + + + + +
+
+
+
+
+ Changez votre OS + + + +
+ + +
+
+
+

+ ";?> +

+

Rafraîchir la page

+
+
+
+ + + diff --git a/BACKEND/PHP/tp4/ex2/css/style.css b/BACKEND/PHP/tp4/ex2/css/style.css new file mode 100644 index 0000000..3a5f75c --- /dev/null +++ b/BACKEND/PHP/tp4/ex2/css/style.css @@ -0,0 +1,32 @@ +table.morpion{ + border-collapse: collapse; + table-layout:fixed; + margin-left:auto; + margin-right:auto; + display:inline-block; + width:auto; +} +table.morpion td { + border : 1px solid #aaaaaa; + width:10rem; + height:10rem; + padding : 0px; + margin:0px; + overflow: hidden; + white-space: nowrap; + text-align:center; + vertical-align:middle; +} +table.morpion i { +font-size:8rem; +} + +table.morpion a { +display : inline-block; +width : 8rem; +height: 8rem; + +} +.center{ + text-align:center; +} diff --git a/BACKEND/PHP/tp4/ex2/include/tictactoe.php b/BACKEND/PHP/tp4/ex2/include/tictactoe.php new file mode 100644 index 0000000..ed46142 --- /dev/null +++ b/BACKEND/PHP/tp4/ex2/include/tictactoe.php @@ -0,0 +1,66 @@ +'; + for ($i = 0; $i < 3; $i ++){ + echo ""; + for ($j = 0; $j < 3; $j ++){ + + echo ""; + + $pos = 3*$i + $j; + if ($grid[$pos] == 0) + echo ""; + if ($grid[$pos] == 1) + echo ''; + if ($grid[$pos] == 2) + echo ''; + + echo ""; + + } + + echo ""; + } + + echo ""; +} diff --git a/BACKEND/PHP/tp4/ex2/index.php b/BACKEND/PHP/tp4/ex2/index.php new file mode 100644 index 0000000..dd05e0a --- /dev/null +++ b/BACKEND/PHP/tp4/ex2/index.php @@ -0,0 +1,26 @@ + + + + + + + + + + +
+

Tic Tac Toe :

+ +$message"; +echo " new game"; +} +displayGrid($grid); +?> +
+ + + diff --git a/BACKEND/PHP/tp4/img/cookie.png b/BACKEND/PHP/tp4/img/cookie.png new file mode 100644 index 0000000..f54392b Binary files /dev/null and b/BACKEND/PHP/tp4/img/cookie.png differ diff --git a/BACKEND/PHP/tp4/img/ttt.png b/BACKEND/PHP/tp4/img/ttt.png new file mode 100644 index 0000000..daf90ff Binary files /dev/null and b/BACKEND/PHP/tp4/img/ttt.png differ