Ciao, questo un semplice script che permette di inviare una mail con un allegato.
Questo script è basilare e ha un cron di invio impostato a 50 secondi per evitare di finire in black-list.(basterebbe impostarlo da 19sec in su. Circa 2/3 mail al minuto.).

PHPmailer è una classe per la gestione dell'invio mail.
Se hai ben presente il funzionamento di una classe e di php non dovresti avere molti problemi.


<! DOCTYPE HTML >


<html lang="en">
<head>
<title> Parsing CSV </title>


<style>
body{
font-family:sans-serif;
color:#424242;
}




</style>


<?
include_once("ConnessioneArchivio.php");


$Connessione = new ConnessioneDB("EmporioGomma", "root", "root", "localhost");
$Connessione->Connessione();


include_once("PHPmailer/_lib/class.phpmailer.php");
?>




</head>
<body>


<div style='border:1px solid #424242; padding-left:2%; border-radius:2px;'>
<h3> Invio </h3>
</div>


<br> <br>


<?
$TimeSleep=50;
$StopSleep=1;

set_time_limit(0);

?>












<?#CREAZIONE CORPO EMAIL


$Oggetto="Variazione sede operativa.";





$Q="SELECT * FROM anagen";
$E=mysql_query($Q);
$RecordClienti=mysql_num_rows($E);



$Contatore = 0;


if ($E and $RecordClienti > 0){
while($G = mysql_fetch_array($E)){
$Id = $G['id_anagen'];
$Email = $G['email'];




$Messaggio = new PHPmailer();



$Messaggio->Host='*********';
$Messaggio->isHtml(true);
$Messaggio->Priority='3';



$Messaggio->FromName='***************';
$Messaggio->From='****************';
$Messaggio->AddAddress("$Email");
$Messaggio->AddReplyTo('**********');
$Messaggio->Subject=$Oggetto;
$Messaggio->AddAttachment("Circolare/comunicazione.pdf");




$Messaggio->Body=stripslashes("

<! DOCTYPE HTML >

<html>
<head>
<style>
body{

font-family:sans-serif;

}

</style>

</head>
<body>
<p> In allegato inviamo nostro nuovo indirizzo sede operativa. <br> Cogliamo l'occasione per porgerVi i nostri piu' cordiali saluti. </p>

<p> ************** </p>

<body>
</html>



");







if(!$Messaggio->Send()){

echo "Errore sull'invio.." . $Messaggio->ErrorInfo;
exit;

}else{

$Contatore = $Contatore + 1;


$Aggiorno="UPDATE anagen SET inviato='1' WHERE id_anagen = '$Id'";
$Eseguo=mysql_query($Aggiorno);

if (!$Eseguo){echo mysql_error(); exit;}


}









if ($StopSleep <> $RecordClienti){
sleep($TimeSleep);
}


$StopSleep = $StopSleep + 1;






}
}



$Messaggio->SmtpClose();
unset($Messaggio);




echo "Ritardo invio: $TimeSleep sec. <br> Totale e-mail: $RecordClienti. <br> <b> Ho inviato correttamente $Contatore email su $RecordClienti.. </b>";
?>




</body>
</html>