Ciao ragazzi,
ho fatto uno script per inviare le mail in html, che è questo:
<?
//change this to your email.
$to = "xxxxxxxxxxx@gmail.com";
$from = "xxxxxxxxxxxx@virgilio.it";
$subject = "Hello! This is HTML email";
//begin of HTML message
$message = "<br>*** Prova invio email html<br> visita <a href=http://www.sito.org >www.sito.org</a>";
// To send the HTML mail we need to set the Content-type header.
$headers = "From: Mittente<$from>";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
// now lets send the email.
$ris = mail($to, $subject, $message, $headers);
echo "Message has been sent....!";
?>
Questo codice funziona, anche l'html viene interpretato correttamente. Il problema sorge
quando ho modificato questo codice per far inviare più mail. Il codice modificato è diventato:
<?php
//prendo i valori dalla form
$titolo=$_GET["titolo"];
$testo=$_GET["testo"];
$gruppoDestinatario=$_GET["gruppo"];
// codice per collegarsi al db e salvare il messaggio
//invia la mail agli utenti del gruppo selezionato
$headers = "From: {$datiMittente["nomeMittente"]} <{$datiMittente["emailMittente"]}>\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$oggetto = "$titolo";
if($gruppoDestinatario=="tutti") {
$query_utenti="SELECT * FROM utenti";
}
else
$query_utenti="SELECT * FROM utenti WHERE nomeGruppo='$gruppoDestinatario'";
$ris=mysql_query($query_utenti,$myconn);
while($riga=mysql_fetch_array($ris)){
$email = $riga['email'];
$messaggio = "$testo";
mail($email, $oggetto, $messaggio, $header);
}
header("Location: gestioneMessaggi.php?status=1");
}
?>
Purtroppo questo codice non funziona bene, non viene visualizzato il mittente (al posto del quale esce Apache server) e i tag html non vengono interpretati. Sapete dirmi da che dipende?
Grazie