Corrige un soucis de Overflow 32 bits
This commit is contained in:
1 parent
3f142a5388
commit
0c8d9cba6d
1 file changed
+14
-11
+14
-11
@@ -10,24 +10,24 @@
|
|||||||
* une tache cron/systemd timer sur le serveur.
|
* une tache cron/systemd timer sur le serveur.
|
||||||
*
|
*
|
||||||
* Regle de securite appliquee ici :
|
* Regle de securite appliquee ici :
|
||||||
* - Pas de shell_exec()/exec()/proc_open() sur une entree utilisateur.
|
* - Pas de shell_exec()/exec()/proc_open() sur une entree utilisateur.
|
||||||
* - Pas de mot de passe DB affiche : on reference une variable
|
* - Pas de mot de passe DB affiche : on reference une variable
|
||||||
* d'environnement ou un fichier .my.cnf externe.
|
* d'environnement ou un fichier .my.cnf externe.
|
||||||
* - Seule action en base : enregistrement de metadonnees de sauvegarde
|
* - Seule action en base : enregistrement de metadonnees de sauvegarde
|
||||||
* (date, taille, note) dans une table de suivi, jamais le contenu.
|
* (date, taille, note) dans une table de suivi, jamais le contenu.
|
||||||
*
|
*
|
||||||
* CORRIGE (20/09/2026, suite a erreur 500 en usage reel) :
|
* CORRIGE (20/09/2026, suite a erreur 500 en usage reel) :
|
||||||
* - require_once _nav.php manquait, provoquant une erreur fatale
|
* - require_once _nav.php manquait, provoquant une erreur fatale
|
||||||
* "Call to undefined function render_admin_nav()".
|
* "Call to undefined function render_admin_nav()".
|
||||||
* - La table backup_log necessaire a cette page n'existait pas :
|
* - La table backup_log necessaire a cette page n'existait pas :
|
||||||
* voir admin/sql/migration_add_missing_tables.sql.
|
* voir admin/sql/migration_add_missing_tables.sql.
|
||||||
*
|
*
|
||||||
* Corrige suite a l'audit du 20/09/2026 : le detail technique des
|
* Corrige suite a l'audit du 20/09/2026 : le detail technique des
|
||||||
* exceptions n'est plus affiche a l'ecran ; il est journalise via
|
* exceptions n'est plus affiche a l'ecran ; il est journalise via
|
||||||
* error_log().
|
* error_log().
|
||||||
*
|
*
|
||||||
* Hypothese de schema : backup_log(id, created_at, admin_username,
|
* Hypothese de schema : backup_log(id, created_at, admin_username,
|
||||||
* label, note, size_bytes_reported)
|
* label, note, size_bytes_reported)
|
||||||
*/
|
*/
|
||||||
declare(strict_types=1);
|
declare(strict_types=1);
|
||||||
|
|
||||||
@@ -54,7 +54,10 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|||||||
} else {
|
} else {
|
||||||
$label = trim((string)($_POST['label'] ?? ''));
|
$label = trim((string)($_POST['label'] ?? ''));
|
||||||
$note = trim((string)($_POST['note'] ?? ''));
|
$note = trim((string)($_POST['note'] ?? ''));
|
||||||
$sizeBytes = filter_input(INPUT_POST, 'size_bytes', FILTER_VALIDATE_INT) ?: null;
|
|
||||||
|
// Correction : Accepte les grands nombres (BigInt) pour les gros backups
|
||||||
|
$rawSize = $_POST['size_bytes'] ?? '';
|
||||||
|
$sizeBytes = (ctype_digit((string)$rawSize)) ? $rawSize : null;
|
||||||
|
|
||||||
if ($label === '') {
|
if ($label === '') {
|
||||||
$feedback = 'Le libelle de la sauvegarde est obligatoire.';
|
$feedback = 'Le libelle de la sauvegarde est obligatoire.';
|
||||||
|
|||||||
Reference in new issue
Block a user