<?php /** * Page de fonctions permettant la la sauvegarde et la restauration des données de la base de la messagerie. */ require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/connexion.php"); require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php"); /** * Fonction générant un fichier CSV avec le contenu des alias virtuels d'un utilisateur. * Ce fichier est créé à la volée et se popose à l'utilisateur pour téléchargement. */ function exportAliasVirtuelsUtilisateur($pdo,$utilisateur) { try { // Filtre des alias virtuels de l'utilisateur courant $req = 'SELECT * FROM postfix_alias_virtuels WHERE destination=:destination'; $sql=$pdo->prepare($req); $sql->bindValue(':destination',$utilisateur); $sql->execute(); $liste_alias_virtuels = $sql->fetchAll(PDO::FETCH_ASSOC); $nom_fichier_csv="Alias-virtuels_".$utilisateur."_".date('d-m-Y').".csv"; // Entêtes HTTP permettant le téléchargement à la volée du CSV header("Content-Disposition: attachment; filename=\"$nom_fichier_csv\""); header("Content-Type: text/csv"); foreach ($liste_alias_virtuels as $alias_virtuel => $champ_alias_virtuel) { echo implode(":", $champ_alias_virtuel)."\n"; } // Le fait de tuer la page enclenche la demande de téléchargement à l'utilisateur qui ne quitte visuellement jamais la page des paramètres die(); } catch (\Exception $e) { die ("Erreur de requête d'export des alias virtuels utilisateur en CSV : ".$e->getMessage()); } } ?>