diff options
author | polo <ordipolo@gmx.fr> | 2021-08-18 10:45:26 +0200 |
---|---|---|
committer | polo <ordipolo@gmx.fr> | 2021-08-18 10:45:26 +0200 |
commit | 452420d0cd05822a9974fe27f0edc4cc4dc300cc (patch) | |
tree | b9f3e14e598080f54bf5ab4ee0657ba3624908aa /index.php | |
parent | 84cb077b39d990c240976a6b20024c89c903ba91 (diff) | |
download | melaine-452420d0cd05822a9974fe27f0edc4cc4dc300cc.zip |
password
Diffstat (limited to 'index.php')
-rw-r--r-- | index.php | 38 |
1 files changed, 20 insertions, 18 deletions
@@ -38,12 +38,7 @@ | |||
38 | // - autoriser PHP (sinon, c'est comme si on avait un site statique) | 38 | // - autoriser PHP (sinon, c'est comme si on avait un site statique) |
39 | // -> pour pouvoir installer le site en n'ayant qu'à modifier les droits du dossier data uniquement et éviter les situations pénibles ou l'utilisateur est bloqué sans rien comprendre, on pourra créer ou utiliser des sauvegardes au format ZIP depuis une page spéciale accessible avec le compte admin | 39 | // -> pour pouvoir installer le site en n'ayant qu'à modifier les droits du dossier data uniquement et éviter les situations pénibles ou l'utilisateur est bloqué sans rien comprendre, on pourra créer ou utiliser des sauvegardes au format ZIP depuis une page spéciale accessible avec le compte admin |
40 | 40 | ||
41 | // au premier démarrage du site | 41 | // sessions, penser aux attaques CSRF (cross-site request forgery): |
42 | // l'explication des éventuels problèmes de droits en lecture/écriture est à chercher ici: | ||
43 | require('controller/installation.php'); | ||
44 | installation(); | ||
45 | |||
46 | // à propos des sessions, penser aux attaques CSRF (cross-site request forgery): | ||
47 | // ça consite à faire qu'un utilisateur connecté avec une session envoie malgré lui une requête GET ou POST qu'un hacker aura cachée par exemple dans une fausse image clicable | 42 | // ça consite à faire qu'un utilisateur connecté avec une session envoie malgré lui une requête GET ou POST qu'un hacker aura cachée par exemple dans une fausse image clicable |
48 | // - solution: faire qu'un GET seul dans une session ne suffise pas à effectuer une action (les GET ne doivent servir qu'à afficher la bonne page), une attaque sur un POST est possible aussi mais plus difficile et nécessite d'injecter du javascript | 43 | // - solution: faire qu'un GET seul dans une session ne suffise pas à effectuer une action (les GET ne doivent servir qu'à afficher la bonne page), une attaque sur un POST est possible aussi mais plus difficile et nécessite d'injecter du javascript |
49 | // - on peut demander à l'utilisateur une vérification supplémentaire avant chaque action, mais c'est plutôt chiant | 44 | // - on peut demander à l'utilisateur une vérification supplémentaire avant chaque action, mais c'est plutôt chiant |
@@ -52,6 +47,14 @@ installation(); | |||
52 | // infos: https://fr.wikipedia.org/wiki/Cross-site_request_forgery | 47 | // infos: https://fr.wikipedia.org/wiki/Cross-site_request_forgery |
53 | session_start(); | 48 | session_start(); |
54 | 49 | ||
50 | // au premier démarrage du site | ||
51 | // l'explication des éventuels problèmes de droits en lecture/écriture est à chercher ici: | ||
52 | require('controller/installation.php'); | ||
53 | require('controller/password.php'); | ||
54 | installation(); | ||
55 | |||
56 | |||
57 | |||
55 | // traitement des POST du ckeditor | 58 | // traitement des POST du ckeditor |
56 | // la fonction submitCKeditor n'affiche rien (controller/admin.php n'est pas utilisé) puis redirige sans GET | 59 | // la fonction submitCKeditor n'affiche rien (controller/admin.php n'est pas utilisé) puis redirige sans GET |
57 | if(isset($_SESSION['admin']) && $_SESSION['admin'] == 1 | 60 | if(isset($_SESSION['admin']) && $_SESSION['admin'] == 1 |
@@ -116,21 +119,20 @@ else | |||
116 | } | 119 | } |
117 | 120 | ||
118 | 121 | ||
119 | // mot de passe de connexion à hacher! | ||
120 | // utiliser php pour ça, plus le .htaccess | ||
121 | require('controller/password.php'); | ||
122 | $secret = "julian"; | ||
123 | |||
124 | 122 | ||
125 | // page du site demandée | 123 | // page du site demandée |
126 | if(isset($_GET['page'])) | 124 | if(isset($_GET['page'])) |
127 | { | 125 | { |
126 | // page d'accueil | ||
127 | if($_GET['page'] == 'accueil') | ||
128 | { | ||
129 | accueil(); | ||
130 | } | ||
128 | // page menu | 131 | // page menu |
129 | if($_GET['page'] == 'menu') | 132 | elseif($_GET['page'] == 'menu') |
130 | { | 133 | { |
131 | menu(); | 134 | menu(); |
132 | } | 135 | } |
133 | |||
134 | // page melaine | 136 | // page melaine |
135 | elseif($_GET['page'] == 'melaine') | 137 | elseif($_GET['page'] == 'melaine') |
136 | { | 138 | { |
@@ -200,10 +202,10 @@ if(isset($_GET['page'])) | |||
200 | discoVisitor(); | 202 | discoVisitor(); |
201 | } | 203 | } |
202 | } | 204 | } |
203 | // page connexion au mode admin | 205 | // page connexion |
204 | elseif($_GET['page'] == 'connexion') | 206 | elseif($_GET['page'] == 'connexion') |
205 | { | 207 | { |
206 | connexion($secret); | 208 | connect(); |
207 | } | 209 | } |
208 | // $_GET['page'] = n'importe quoi! | 210 | // $_GET['page'] = n'importe quoi! |
209 | else | 211 | else |
@@ -216,9 +218,10 @@ if(isset($_GET['page'])) | |||
216 | // actions en mode admin, recharger une des pages principales | 218 | // actions en mode admin, recharger une des pages principales |
217 | elseif($_SESSION['admin'] == 1 && isset($_GET['action'])) | 219 | elseif($_SESSION['admin'] == 1 && isset($_GET['action'])) |
218 | { | 220 | { |
219 | if($_GET['action'] == 'nouveau_mdp') | 221 | if($_GET['action'] == 'modif_mdp') |
220 | { | 222 | { |
221 | changerMotDePasse($secret); | 223 | //changePassword($secret); |
224 | changePassword(); | ||
222 | } | 225 | } |
223 | // extraction du contenu du dossier data | 226 | // extraction du contenu du dossier data |
224 | else if($_GET['action'] == 'extraction') | 227 | else if($_GET['action'] == 'extraction') |
@@ -250,7 +253,6 @@ elseif(isset($_GET['erreur'])) | |||
250 | //else | 253 | //else |
251 | //{ | 254 | //{ |
252 | accueil(); | 255 | accueil(); |
253 | // accueil_404(); // à créer | ||
254 | //} | 256 | //} |
255 | } | 257 | } |
256 | 258 | ||