Boas, alguem teria um script que envia email para varios destinatarios utilizando "," tem que enviar o email html
abracos
Script De Email
Started By
hostliv
, 23/02/2011, 17:11
7 replies to this topic
#1
Posted 23/02/2011, 17:11
#2
Posted 23/02/2011, 17:54
Yo!
Você deve usar a função mail()
Vê se serve, e posta os resultados.
Você deve usar a função mail()
<?php // multiple recipients $to = 'aidan@example.com' . ', '; // note the comma $to .= 'wez@example.com'; // subject $subject = 'Birthday Reminders for August'; // message $message = ' <html> <head> <title>Birthday Reminders for August</title> </head> <body> <p>Here are the birthdays upcoming in August!</p> <table> <tr> <th>Person</th><th>Day</th><th>Month</th><th>Year</th> </tr> <tr> <td>Joe</td><td>3rd</td><td>August</td><td>1970</td> </tr> <tr> <td>Sally</td><td>17th</td><td>August</td><td>1973</td> </tr> </table> </body> </html> '; /* Atenção se você pretende inserir numa variável uma mensagem html mais complexa do que essa sem precisar escapar os carateres necessários pode ser feito o uso da sintaxe heredoc, consulte tipos-string-sintaxe-heredoc */ // To send HTML mail, the Content-type header must be set $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; // Additional headers $headers .= 'To: Mary <mary@example.com>, Kelly <kelly@example.com>' . "\r\n"; $headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n"; $headers .= 'Cc: birthdayarchive@example.com' . "\r\n"; $headers .= 'Bcc: birthdaycheck@example.com' . "\r\n"; // Mail it mail($to, $subject, $message, $headers); ?>PS: Esse código NÃO é meu, é exemplo do Manual do PHP.
Vê se serve, e posta os resultados.
#3
Posted 24/02/2011, 14:46
Ola Guilherme, e como ficaria para no lugar de $to eu fazer ele pegar todos os emails digitados em uma caixa de texto pelo usuario separados por , ? como um script de indicacao.
Abracos
Abracos
#4
Posted 25/02/2011, 11:23
eu aconselho a usar o PHPMailer...
#5
Posted 28/02/2011, 06:07
usa um while:
//faça uma consulta que retorne os registros para os quais quer mandar email. $sql = "SELECT * FROM tabela WHERE seusParametrosDeFiltro"; $consulta = mysql_query($sql); while($dados = mysql_fetch_array($consulta)) { $to .= $dados["email"]; }
#6
Posted 28/02/2011, 11:45
Para pegar todos os emails separados por virgula você pode fazer o seguinte:
E depois adiciona em um loop para colocar os emails em um addTo.
Arrocha!
//recebe os emails do campo do usuário //supondo que está em um form e tem o método POST como forma de envio $emails = $_POST['emails']; //separa a string em um array nas virgulas $arrEmails = explode( ',' , $emails ); //retira os espaços em branco dos emails if( !empty( $arrEmails ) ){ for( $i = 0; $i < count( $arrEmails ); $i++ ){ $arrEmails[$i] = trim( $arrEmails[$i] ); } }
E depois adiciona em um loop para colocar os emails em um addTo.
Arrocha!
Iniciando na Ajuda On line...
Meu post lhe ajudou? Reputar/votar é uma das formas de agradecer.
Meu post lhe ajudou? Reputar/votar é uma das formas de agradecer.
#7
Posted 02/03/2011, 18:53
OOps parece que esqueci de concatenar os emails oO"isso ia dar um probelmão xD.
Nada não, conserto agora:
Nada não, conserto agora:
//faça uma consulta que retorne os registros para os quais quer mandar email. $sql = "SELECT * FROM tabela WHERE seusParametrosDeFiltro"; $consulta = mysql_query($sql); while($dados = mysql_fetch_array($consulta)) { $to .= $dados["email"] . ", "; } /*PS vai ficar algo do tipo email1@provedor, email2@provedor, " sobrandoum ", "no final da string. Aí vc podia colocar aqui, fora do loop, o seu email, assim, tanto vc sabe exatamente o que tá manando pros outros (tá recebendouma copia), qnt fecha a string. */ $to .= "seuemail@seuprovedor";
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)