From 1ad47a7ca38e679a50c8dfee004db88b1633d7cf Mon Sep 17 00:00:00 2001 From: polo Date: Sat, 29 Jul 2023 11:25:13 +0200 Subject: tests extensions php, chmod dans Image --- controller/Security.php | 11 +++++++---- controller/installation.php | 12 +++++++++++- 2 files changed, 18 insertions(+), 5 deletions(-) (limited to 'controller') diff --git a/controller/Security.php b/controller/Security.php index 0ab4c02..4bdba08 100644 --- a/controller/Security.php +++ b/controller/Security.php @@ -56,16 +56,19 @@ class Security // filtrer / et \ semble inutile $cibles = [' ', '/', '\\', ':', '*', '?', '<', '>', '|', '=', "'", '`', '"', '%22', '#']; - $chaine = str_replace($cibles, '_', $chaine); + $chaine = str_replace($cibles, '_', $chaine); // nécéssite l'extension mbstring $chaine = mb_strtolower($chaine); return($chaine); // les problèmes avec \ persistent !! // => javascript // malheureusement document.getElementById('upload').files[0].name = chaine; ne marche pas! interdit! - // solution? - // créer une copie du fichier et l'envoyer à la place - // envoyer le nom souhaité au serveur en AJAX puis renommer avec PHP + // javascript ne doit pas pouvoir accéder au système de fichiers + // solutions: + // - au lieu de fournir une chaine (le chemin du fichier), donner un objet à files[0].name + // - créer une copie du fichier et l'envoyer à la place + // - envoyer le fichier en AJAX + // - envoyer le nom du fichier à part puis renommer en PHP } } diff --git a/controller/installation.php b/controller/installation.php index 2e4e1c3..f0d2890 100644 --- a/controller/installation.php +++ b/controller/installation.php @@ -21,7 +21,17 @@ function installation() // fclose($fichier); // chmod('.htaccess', 0666); // mettre 0644 en production } - + + // extensions de php + // nécessité de 'dom' à confirmer + $extensions = ['imagick', 'gd', 'zip', 'mbstring', 'dom']; + foreach($extensions as $extension) + { + if(!extension_loaded($extension)) + { + echo("l'extension " . $extension . ' est manquante
'); + } + } // dans le cas de l'utilisation d'une base de données, le fichiers zip devrait contenir un "dump" (un fichier .sql), // à voir si php est capable d'obtenir ou redonner ce fichier à la BDD -- cgit v1.2.3