• Publicidad

sendmail

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

sendmail

Notapor viqui » 2006-01-03 16:06 @713

Hola, soy nueva en el foro y deseo a todos feliz 2006.

Recién he comenzado a leer algunos tutoriales de Perl, disculpen pues si formulo preguntas un tanto “tontas" propias de un novato.

Estoy desarrollando un sitio web en un servidor pago. Hasta ahora sólo había utilizado el lenguaje HTML. Pero ahora el servidor que alberga mi sitio me da la posibilidad de utilizar Perl lo que me permite agregarle funcionalidad al sitio.
Como quiero dar la posibilidad a los visitantes del sitio de que se subscriban para poder enviarles un boletín con las noticias del sitio me interesó poder entender esto del envío de email por medio de sendmail de Perl.

Pero por más que leo los tutoriales no llego a entender lo siguiente ¿Cómo relaciono el código siguiente:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!/usr/bin/perl -w
  2. use strict;
  3. open (MAIL,"|/usr/lib/sendmail -t");
  4. print MAIL "To: to\@e.mail\n";
  5. print MAIL "From: from\@e.mail\n";
  6. print MAIL "Subject: Asunto del mensaje\n\n";
  7. print MAIL "Cuerpo del mensaje\n";
  8. close(MAIL);
  9. exit(1);
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
con un formulario mediante el cual los visitantes me envían su dirección de correo, para que a dicha dirección le enviemos el boletín?

¿Cómo realizo el envío masivo mediante sendmail a las direcciones que me han enviado? Cuando hice estas preguntas al servidor que aloja mi sitio web me respondió diciendo que utilice este ejemplo:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!/usr/bin/perl
  2. print "Content-type: text/html\n\n";
  3.  
  4. $title='mail test';
  5. $to='MAIL ADDRESS TO SEND TO';
  6. $subject='Using Sendmail';
  7.  
  8. open(MAIL, "|/usr/sbin/sendmail -t");
  9.  
  10. ## Mail Header
  11. print MAIL "To: $to\n";
  12. print MAIL "From: $from\n";
  13. print MAIL "Subject: $subject\n\n";
  14. ## Mail Body
  15. print MAIL "This is a test message from Yahoo!
  16. Web Hosting\n";
  17.  
  18. close(MAIL);
  19.  
  20. print
  21. "<html><head><title>$title</title></head>\n<body>\n\n";
  22.  
  23. ## START HTML content
  24. print "<h1>$title</h1>\n";
  25. print "<p>A message has been sent from $from to
  26. $to"; ## END HTML
  27. CONTENT print "\n\n</body></html>";
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

Pregunto: ¿Me están queriendo decir que dentro del código de este script debo escribir las direcciones de mis visitantes que quieren recibir el boletín y también el texto del boletín, y si es así, cuál es el mecanismo para enviarlo?

Quiero decir lo siguiente: si yo utilizara algún gestor de listas de correo por fuera de mi web, como e-listas , por ej. en la página donde está el formulario para enviar el boletín adjunto el archivo o copio y pego el texto y ya está.

¿Cómo puedo entonces hacer esto con sendmail y utilizando ese script con el código que los administradores del servidor me mandaron?

Por favor, estoy muy desorientada :oops: y agradeceré muchísimo cualquier sugerencia que sobre este tema me hagan llegar.

Muchas gracias
Viqui, de Argentina
viqui
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2006-01-02 14:45 @656

Publicidad

Re: sendmail

Notapor deer » 2006-01-03 16:41 @736

Hola, viejo.

Bueno, te cuento, en el sitio Biblioteca de Aplicaciones Web de Justino Martinez, se encuentra un script llamado GenLista, que es lo que estás buscando.

Bájalo desde aquí:
http://www.webviva.com/biblioteca/modul ... oad&cid=28

Su documentación está en español y no es muy difícil de instalar.


Saludos.
deer
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2006-01-03 10:50 @493

Notapor Mickz » 2006-01-03 17:00 @750

Mira, no sé cómo estés recibiendo los emails de tus usuarios pero donde los estés recibiendo te sugiero que esas direcciones de email las metas en un arreglo mediante expresiones regulares.

Algo así como esto:
$to = '[email protected],[email protected],[email protected]';

solo haces esto:
@to= split(/,/, $to);

Y luego podrías hacer esto:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
foreach $to (@to) {

    open (MAIL,"|/usr/lib/sendmail-i -t" );
    print MAIL "To: @to\n";
    print MAIL "From: De quien vienene el mail\n";
    print MAIL "Subject: subject del mensaje\n\n";
    print MAIL contenido;
    close (MAIL);

}
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

y así podrás enviar el boletín a todos tus usuarios.
Mickz
Perlero nuevo
Perlero nuevo
 
Mensajes: 14
Registrado: 2005-12-14 13:07 @588
Ubicación: Mexico

Notapor Perl user » 2006-01-03 17:13 @759

Cito mi respuesta a un mensaje que hice sobre envío de correo hace unos minutos:

"Te recomiendo utilizar Email::Send junto con cualquiera de los módulos del espacio de nombres Email::*, los cuales cumplen rigurosamente con los RFC necesarios para envío y recepción de correo así como una API sencilla de utilizar, son módulos que actualmente están mantenidos y actualizados."


Saludos,

PD. No es necesario reinventar la rueda cuando la que existe es suficientemente buena y no la podemos mejorar.
Marco A. Manzo
[email protected]
http://www.unixmonkeys.com/amnesiac/
Perl Programming Language
Perl user
Maestro honorario
Maestro honorario
 
Mensajes: 271
Registrado: 2004-11-03 21:11 @924

Notapor kidd » 2006-01-03 21:39 @944

Hola:

Aunque puedes llegar a la solución siguiendo los consejos que se te muestran aquí en el foro y con los tutoriales del sitio, hay un servicio que ofrezco que se llama Phantom EZ Form, quizá te parezca útil:

http://cgi.baboonsoftware.com/PhantomEZ ... dex_es.htm


SALUDOS
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1166
Registrado: 2003-10-15 16:52 @744
Ubicación: México

sendmail

Notapor viqui » 2006-01-05 15:43 @696

Gracias por las respuestas. Voy a ver cómo sigo con este tema...

Cualquier duda, vuelvo a consultarles.
viqui
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2006-01-02 14:45 @656


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 18 invitados