diff options
| author | polo <ordipolo@gmx.fr> | 2025-06-19 02:53:01 +0200 |
|---|---|---|
| committer | polo <ordipolo@gmx.fr> | 2025-06-19 02:53:01 +0200 |
| commit | b61c918e05124ddb0bb3102a626ca913a0ab4f3a (patch) | |
| tree | 48c9b88466ab566838f0ff7bdb933eabc0b01600 /src/controller/Security.php | |
| parent | 83619ac611490e8cd652a0252349704100fc5148 (diff) | |
| download | cms-b61c918e05124ddb0bb3102a626ca913a0ab4f3a.tar.gz cms-b61c918e05124ddb0bb3102a626ca913a0ab4f3a.tar.bz2 cms-b61c918e05124ddb0bb3102a626ca913a0ab4f3a.zip | |
upload image éditeur: nom d'origine + uniqid + extension d'origine dans une liste autorisée
Diffstat (limited to 'src/controller/Security.php')
| -rw-r--r-- | src/controller/Security.php | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/controller/Security.php b/src/controller/Security.php index 7d592e9..cd31cb8 100644 --- a/src/controller/Security.php +++ b/src/controller/Security.php | |||
| @@ -59,11 +59,15 @@ class Security | |||
| 59 | // => on remplace tout par des _ | 59 | // => on remplace tout par des _ |
| 60 | // filtrer / et \ semble inutile | 60 | // filtrer / et \ semble inutile |
| 61 | 61 | ||
| 62 | $cibles = [' ', '/', '\\', ':', '*', '?', '<', '>', '|', '=', "'", '`', '"', '%22', '#']; | 62 | /*$cibles = [' ', '/', '\\', ':', '*', '?', '<', '>', '|', '=', "'", '`', '"', '%22', '#']; |
| 63 | $chaine = str_replace($cibles, '_', $chaine); // nécéssite l'extension mbstring | 63 | $chaine = str_replace($cibles, '_', $chaine); // nécéssite l'extension mbstring |
| 64 | $chaine = mb_strtolower($chaine); | 64 | $chaine = mb_strtolower($chaine); |
| 65 | return($chaine); | 65 | return($chaine);*/ |
| 66 | 66 | ||
| 67 | $chaine = preg_replace('/[^a-zA-Z0-9_-]/', '_', $chaine); // ne garder que les lettres, chiffres, tirets et underscores | ||
| 68 | $chaine = preg_replace('/_+/', '_', $chaine); // doublons d'underscores | ||
| 69 | return trim($chaine, '_'); | ||
| 70 | |||
| 67 | // les problèmes avec \ persistent !! | 71 | // les problèmes avec \ persistent !! |
| 68 | // => javascript | 72 | // => javascript |
| 69 | // malheureusement document.getElementById('upload').files[0].name = chaine; ne marche pas! interdit! | 73 | // malheureusement document.getElementById('upload').files[0].name = chaine; ne marche pas! interdit! |
