Aide pour sauvegarde bdd grâce à php

Fermé
Pat4671 - 26 janv. 2020 à 13:00
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 - 26 janv. 2020 à 14:11
Hey, comment allez-vous?
Je viens vers vous car j'ai un petit soucis, il y a plusieurs mois j'avais voulu mettre en place un script php pour sauvegarder ma bdd. Code que j'avais trouvé et un tout petit peu revisité. Le problème dans ce code est qu'il ne supprime pas les sauvegardes anciennes... Je me retrouve donc avec un nombre de fichier zip énorme qui me prends de la place. Je vous mets ci-dessous le script php que j'utilise:
<?php

// Webbax - 24.08.16 - processus pour les backups MySQL sur le FTP
if(isset($_GET['token']) && $_GET['token']=='...securite'){

    $database[0] ='****';
    $user[0] ='*';
    $pass[0] ='**';
    $server[0] ='***';


    $nb_loop = count($database)-1;
    for($i=0;$i<=$nb_loop;$i++){

        $export_path = $database[$i].'_'.date("Y-m-d-H-i-s").'.gz';
        $command = 'mysqldump --opt -h '.$server[$i].' -u '.$user[$i].' -p'.$pass[$i].' '.$database[$i].' > '.$export_path;
        $output = array();
        exec($command,$output,$worked);

        switch($worked){
        case 0:
            echo 'Base de données <b>'.$database[$i].'</b> exporté avec succès vers l\'emplacement <b>'.$export_path.'</b><br/>';
            break;
        case 1:
            echo 'Il y a eu un message d\avertissement durant l\'export de la base <b>'.$database[$i].'</b> vers <b>'.$export_path .'</b><br/>';
            break;
        case 2:
            echo 'Il y a eu un message d\'erreur durant l\'export. Veuillez vérifier vos valeurs : <br/>
                 <br/>
                 <table>
                    <tr>
                        <td>MySQL Database Name:</td>
                        <td><b>'.$database[$i].'</b></td>
                    </tr>
                    <tr>
                        <td>MySQL User Name:</td>
                        <td><b>' .$user[$i] .'</b></td>
                    </tr>
                    <tr>
                        <td>MySQL Password:</td>
                        <td><b>NOTSHOWN</b></td>
                    </tr>
                    <tr>
                        <td>MySQL Host Name:</td>
                        <td><b>' .$server[$i] .'</b></td>
                    </tr>
                </table>
                <br/>';
            break;
        }
    }
}

?>

Quelqu'un sait il m'aider ou me pister pour rajouter à ce script une fonction qui va supprimé les sauvegardes de plus de xj?

Bonne journée
Configuration: Windows / Firefox 72.0
A voir également:

1 réponse

jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
26 janv. 2020 à 14:11
Bonjour,

Lister le contenu d'un répertoire
https://www.php.net/manual/fr/function.dir.php
ou https://www.php.net/manual/fr/function.glob.php

Vérifier la date de création/modification d'un fichier
https://www.php.net/manual/fr/function.filemtime.php

.
0