Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Mundo Perl » Web » Como envíar un email a varios destinatarios Responder al tema
Nuevo tema


Página 1 de 1  [ 3 mensajes ] 
 
Nota 2005-12-15 19:46 @865

Perlero Nuevo
Registrado: 2005-12-14 13:07 @588
Ubicación: Mexico
Mensajes: 14
Como envíar un email a varios destinatarios
Hola a todos soy novato en PERL y tengo un problema con un cgi el cual tengo funcionando para
envio de un mail, pero lo que quiero es hacer que este funcione para varios destinatarios. pongo mi aplicacion para ver si alguien me puede ayudar :roll: gracias.

aplicacion cgi

#/usr/local/bin/perl


use CGI;
$cgi=new CGI;

$sendmail="/usr/lib/sendmail";
$recommendSubject = "Una amiga quiere que visites beinggirl.net";
$recommendSender = "";
$recommendText = "------------------------------------------------------------".
"\n\n_MESSAGE_CONTENT\n\n".
"------------------------------------------------------------".


$relativeAddress="";
$recommendRedirect = $relativeAddress."";




sub validate_email {
$_ = shift;

return (m/^([A-Z0-9]+[._]?){1,}[A-Z0-9]+\@(([A-Z0-9]+[-]?){1,}[A-Z0-9]+\.){1,}[A-Z]{2,4}$/i);
}

$referer = $cgi->param('referer');

if ($referer eq "RECOMMEND") {

$subject = $recommendSubject;
$from = $recommendSender;
$to = $cgi->param('email');
$message = $cgi->param('message');
$content = $recommendText;
$redirect = $recommendRedirect;

$_ = $content;
s/_MESSAGE_CONTENT/$message/g;
$content = $_;

$isValidAddress = validate_email($to);

}
open (MAIL,"| $sendmail -i -t" );
print MAIL "To: $to\n";
print MAIL "From: $from\n";
print MAIL "Subject: $subject\n\n";
print MAIL $content;
close (MAIL);

print $cgi->header;
print "<html><head><meta http-equiv=\"refresh\" content=\"1; URL=$redirect\"></head></html>";
exit 0;

Aplicacion html
[/b]


Nota 2005-12-16 09:07 @421
Avatar de Usuario
Vive para Perl en Español
Registrado: 2003-11-18 16:13 @717
Ubicación: Buenos Aires
Mensajes: 455
Se me cocurre esto

Create un @to que tenga las direcciones a las cuales mandas el mail

foreach my $to (@to){

open (MAIL,"| $sendmail -i -t" );
print MAIL "To: $to\n";
print MAIL "From: $from\n";
print MAIL "Subject: $subject\n\n";
print MAIL $content;
close (MAIL);

}

Estás creando un mail por cada dirección, para crear el @to depende de como envíes los parámetros desde tu HTML...

Saludos

_________________
MonoSwim


Nota 2005-12-16 09:24 @433
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10270
En la variable $to agrega todas las direcciones, separadas por ';'. Si no te funciona así, prueba con ','.


Responder al tema  [ 3 mensajes ] 

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO