<?php
////////////////////A personnaliser !!!/////////////////////
$destinataire = "adresse@mail";
///////////////////////////////////////////////////////////

	// Données de connexion à la base de données
	$log="DEBUT<br/>";
	// On spécifie le chemin absolu où le script stockera les sorties .gz et .html
	$path = 'svgde/';
	//$path="D:\TEMP";

	// on supprime les fichiers vieux de plus de 3 jours
	// on recupere le nom du fichier le plus récent
	
	$latest_time = 0;
	$latest_filename = '';
	
	$folder = new DirectoryIterator($path);  // récupère l'nsemble des fichiers dans $path
	foreach($folder as $file)
	{
		if($file->isFile() && !$file->isDot())					// si l'entrée est un fichier normal  et si l'entrée n'est pas . ou ..  
		{
			if (time() - $file->getMTime() > 25920000)		// si la date du fichier a plus de 300 jours (en seconde 1 j = 86400 sec))
			{
				unlink($file->getPathname());									// supprime - unlink- le fichier
				$log.="le fichier $file->getPathname() a éte supprimé<br/>";
			}	
			
			if ($file->getMTime() > $latest_time)			// Si c'est le dernier fichier crée
			{
				$latest_time = $file->getMTime();
				$latest_filename = $file->getPathname();
			}
		}
	}
	
	echo "<br/>Dernier fichier créé :<br/><br/><br/> <b>$latest_filename</b>";
	
	
	
	
	
	

	//----------------------------------
	// Construction de l'entête
	//----------------------------------
	// On choisit généralement de construire une frontière générée aléatoirement
	// comme suit. (le document pourra ainsi etre attache dans un autre mail
	// dans le cas d'un transfert par exemple)
	
	$boundary = "-----=".md5(uniqid(rand()));

	// Ici, on construit un entête contenant les informations
	// minimales requises.
	// Version du format MIME utilisé
	
	$header = "MIME-Version: 1.0\r\n";
	
	// Type de contenu. Ici plusieurs parties de type different "multipart/mixed"
	// Avec un frontière définie par $boundary
	
	$header .= "Content-Type: multipart/mixed; boundary=\"$boundary\"\r\n";
	$header .= "\r\n";

////////////////////////////////////////////////////////////////////////////////////	
//	MAIL
	//--------------------------------------------------
	// Construction du message proprement dit
	//--------------------------------------------------

	// Pour le cas, où le logiciel de mail du destinataire
	// n'est pas capable de lire le format MIME de cette version
	// Il est de bon ton de l'en informer
	// REM: Ce message n'apparaît pas pour les logiciels sachant lire ce format
	
	$msg = "Je vous informe que ceci est un message au format MIME 1.0 multipart/mixed.\r\n";

	//---------------------------------
	// 1ère partie du message
	// Le texte
	//---------------------------------
	// Chaque partie du message est séparée par une frontière
	$msg .= "--$boundary\r\n";

	// Et pour chaque partie on en indique le type
	$msg .= "Content-Type: text/plain; charset=\"iso-8859-1\"\r\n";
	// Et comment il sera codé
	$msg .= "Content-Transfer-Encoding:8bit\r\n";
	// Il est indispensable d'introduire une ligne vide entre l'entête et le texte
	$msg .= "\r\n";
	// Enfin, on peut écrire le texte de la 1ère partie
	$msg .= "Ceci est un mail avec un fichier joint\r\n";
	$msg .= "\r\n";

	//---------------------------------
	// 2nde partie du message
	// Le fichier
	//---------------------------------
	// Tout d'abord lire le contenu du fichier
	$file = $latest_filename;
	$fp = fopen($file, "rb");   // b c'est pour les windowsiens
	$attachment = fread($fp, filesize($file));
	fclose($fp);

	// puis convertir le contenu du fichier en une chaîne de caractères
	// certe totalement illisible mais sans caractères exotiques
	// et avec des retours à la ligne tout les 76 caractères
	// pour être conforme au format RFC 2045
	$attachment = chunk_split(base64_encode($attachment));

	// Ne pas oublier que chaque partie du message est séparée par une frontière
	$msg .= "--$boundary\r\n";
	// Et pour chaque partie on en indique le type
	$msg .= "Content-Type: application/x-gzip; name=\"$file\"\r\n";
	// Et comment il sera codé
	$msg .= "Content-Transfer-Encoding: base64\r\n";
	// Petit plus pour les fichiers joints
	// Il est possible de demander à ce que le fichier
	// soit si possible affiché dans le corps du mail
//	$msg .= "Content-Disposition: inline; filename=\"$file\"\r\n";
	// Il est indispensable d'introduire une ligne vide entre l'entête et le texte
	$msg .= "\r\n";
	// C'est ici que l'on insère le code du fichier lu
	$msg .= $attachment . "\r\n";
	$msg .= "\r\n\r\n";

	// voilà, on indique la fin par une nouvelle frontière
	$msg .= "--$boundary--\r\n";

	
	$expediteur   = "admin@passpro";
	$reponse      = $expediteur;

	$ok=mail($destinataire, "Svgde Bdd Passpro", $msg,"Reply-to: $reponse\r\nFrom: $expediteur\r\n".$header);
	echo $ok?"<h1> Mail envoyé avec succés</h1>":"<h1> L'envoi du mail a échoué</h1>";
?>