summaryrefslogtreecommitdiff
path: root/controller
diff options
context:
space:
mode:
authorpolo <ordipolo@gmx.fr>2023-07-29 11:25:13 +0200
committerpolo <ordipolo@gmx.fr>2023-07-29 11:25:13 +0200
commit1ad47a7ca38e679a50c8dfee004db88b1633d7cf (patch)
treee60107c17da6341f08335cb9df730a5c34073b4b /controller
parent353a25789d477a0403f0acf35cef158ec8c8e4eb (diff)
downloadmelaine-1ad47a7ca38e679a50c8dfee004db88b1633d7cf.zip
tests extensions php, chmod dans Image
Diffstat (limited to 'controller')
-rw-r--r--controller/Security.php11
-rw-r--r--controller/installation.php12
2 files changed, 18 insertions, 5 deletions
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
56 // filtrer / et \ semble inutile 56 // filtrer / et \ semble inutile
57 57
58 $cibles = [' ', '/', '\\', ':', '*', '?', '<', '>', '|', '=', "'", '`', '"', '%22', '#']; 58 $cibles = [' ', '/', '\\', ':', '*', '?', '<', '>', '|', '=', "'", '`', '"', '%22', '#'];
59 $chaine = str_replace($cibles, '_', $chaine); 59 $chaine = str_replace($cibles, '_', $chaine); // nécéssite l'extension mbstring
60 $chaine = mb_strtolower($chaine); 60 $chaine = mb_strtolower($chaine);
61 return($chaine); 61 return($chaine);
62 62
63 // les problèmes avec \ persistent !! 63 // les problèmes avec \ persistent !!
64 // => javascript 64 // => javascript
65 // malheureusement document.getElementById('upload').files[0].name = chaine; ne marche pas! interdit! 65 // malheureusement document.getElementById('upload').files[0].name = chaine; ne marche pas! interdit!
66 // solution? 66 // javascript ne doit pas pouvoir accéder au système de fichiers
67 // créer une copie du fichier et l'envoyer à la place 67 // solutions:
68 // envoyer le nom souhaité au serveur en AJAX puis renommer avec PHP 68 // - au lieu de fournir une chaine (le chemin du fichier), donner un objet à files[0].name
69 // - créer une copie du fichier et l'envoyer à la place
70 // - envoyer le fichier en AJAX
71 // - envoyer le nom du fichier à part puis renommer en PHP
69 } 72 }
70} 73}
71 74
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()
21 // fclose($fichier); 21 // fclose($fichier);
22 // chmod('.htaccess', 0666); // mettre 0644 en production 22 // chmod('.htaccess', 0666); // mettre 0644 en production
23 } 23 }
24 24
25 // extensions de php
26 // nécessité de 'dom' à confirmer
27 $extensions = ['imagick', 'gd', 'zip', 'mbstring', 'dom'];
28 foreach($extensions as $extension)
29 {
30 if(!extension_loaded($extension))
31 {
32 echo("l'extension " . $extension . ' est manquante<br>');
33 }
34 }
25 35
26 // dans le cas de l'utilisation d'une base de données, le fichiers zip devrait contenir un "dump" (un fichier .sql), 36 // dans le cas de l'utilisation d'une base de données, le fichiers zip devrait contenir un "dump" (un fichier .sql),
27 // à voir si php est capable d'obtenir ou redonner ce fichier à la BDD 37 // à voir si php est capable d'obtenir ou redonner ce fichier à la BDD