inviare email a indirizzi pescati da query

  • Creatore Discussione Creatore Discussione thenax
  • Data di inizio Data di inizio

thenax

Nuovo Utente
8 Apr 2007
17
0
0
avrei necessita di inviare delle email a specifici indirizzi e non a tutti
gli utenti del sito (utente1 utente2 e utente3) come invece è specificato
ora qui sotto nell'array.
gli indirizzi vengono prelevati da una query che si chiama "invisibili" (il
campo dove è contenuta l'email si chiama 'username') e questi indirizzi
potrebbero essere solo uno o due anzichè tutti e tre.

come posso fare a gestire gli array variabili?


ecco il codice:




PHP:
<?php
mysql_select_db($database_server, $server);
$query_eventi = "SELECT id, d, m, y, title, text FROM calendar_mssgs WHERE 
concat_ws('-',y,lpad(m,2,0),lpad(d,2,0)) < curdate() + interval 3 day AND 
concat_ws('-',y,lpad(m,2,0),lpad(d,2,0)) > curdate()";
$eventi = mysql_query($query_eventi, $server) or die(mysql_error());
$row_eventi = mysql_fetch_assoc($eventi);
$totalRows_eventi = mysql_num_rows($eventi); //da questa query ricavo gli 
eventi che si verificheranno nei prossimi uno/due giorni

$evento = $row_eventi['evento'];

$colname_invisibili = "-1";
if (isset($_SESSION['$evento'])) {
  $colname_invisibili = $_SESSION['$evento'];
}
mysql_select_db($database_server, $server);
$query_invisibili = sprintf("SELECT username, hash, fname, lname FROM 
calendar_users WHERE hash NOT IN (SELECT username FROM partecipanti WHERE 
evento = %s)", GetSQLValueString($colname_invisibili, "text"));
$invisibili = mysql_query($query_invisibili, $server) or die(mysql_error());
$row_invisibili = mysql_fetch_assoc($invisibili);
$totalRows_invisibili = mysql_num_rows($invisibili); //da questa query 
ricavo i nomi di coloro che non hanno ancora segnalato la loro presenza a un 
evento

if ($totalRows_invisibili > 0) { //se ci sono persone che non hanno ancora 
segnalato la loro presenza allora....
require("class.phpmailer.php");
$aindirizzi = 
array("[email protected]","[email protected]","[email protected]");
foreach ($aindirizzi as $destinatario)
{
$mail = new PHPMailer();

$mail->SetLanguage("it","./");

$mail->IsSendmail();                                   // send via SMTP

$mail->Host     = "mail.xxxxxxxxx.it"; // SMTP servers

$mail->SMTPAuth = true;     // turn on SMTP authentication

$mail->Username = "[email protected]";  // SMTP username

$mail->Password = "xxxxxxxx"; // SMTP password

$mail->From     = "calendario eventi";

$mail->FromName = "Gruppo Grotte CAI Savona ";

$mail->AddAddress($destinatario);

$mail->WordWrap = 100;                              // set word wrap

$mail->IsHTML(false);                               // send as HTML

$mail->Subject = "ATTENZIONE! DEVI CONFERMARE LA TUA PRESENZA AD UN EVENTO 
per il giorno $day/$month/$year ";

$colname_Recordset2 = "-1";
  if (isset($destinatario)) {
    $colname_Recordset2 = $destinatario;
  }
  $query_Recordset2 = sprintf("SELECT uid, username, fname, lname, hash FROM 
calendar_users WHERE username = %s", GetSQLValueString($colname_Recordset2, 
"text"));
  $Recordset2 = mysql_query($query_Recordset2, $server) or 
die(mysql_error());
  $row_Recordset2 = mysql_fetch_assoc($Recordset2);
  $totalRows_Recordset2 = mysql_num_rows($Recordset2); //determino il codice 
id dell utente indispensabile per confermare la presenza tramite il link 
spedito via email e va infatti a cercare la corrispondenza tra indirizzo 
destinatario e username (email) nel database per ricavare il codice id

$mail->Body = "Ad oggi non ci risulta ancora che tu abbia segnalato al 
gruppo la tua presenza/assenza al seguente evento: ".$row_eventi['title']." 
per il giorno 
".$row_eventi['d']."/".$row_eventi['m']."/".$row_eventi['y']."<br>
<br>
".

$mail->AltBody  =  $row_eventi['text']."<br>
<br>
"."Provvedi a confermare la tua presenza cliccando <a
href=\"http://www.xxxxxxxxxxxx.it/areasoci/presente.php?id=".$row_Recordset2['hash']."&evento=".$row_eventi['id']."&presenza=1\"> 
qui </a>"."altrimenti clicca su <a 
href=\"http://www.xxxxxxxxxx.it/areasoci/presente.php?id=".$row_Recordset2['hash']."&evento=".$row_eventi['id']."&presenza=0\"> 
purtroppo non ci sar&ograve; </a>"." Diversamente continuerai a ricevere 
questa e-mail ogni due ore sino al giorno dell evento!";

$mail->Send();

}
}
?>
 

Discussioni simili