Using perl Syntax Highlighting
- ################ librería ################
- use MIME::Lite;
- use Net::SMTP;
- use Authen::SASL;
- sub send_mail_to {
- my $sender = "$_[0]";
- my $receiver = "$_[1]";
- my $cc = "$_[2]";
- my $subject = "$_[3]";
- my $body = "$_[4]";
- my $ServerName = "XXXXX";
- my $ServerAccount = "XXXXXXXXXX";
- my $ServerPwd = "XXXXXXXXX";
- my $smtp = "";
- eval {
- $smtp = Net::SMTP->new( $ServerName, Hello => "XXXXXXX", Debug => 1 );
- die "Couldn't connect to server" unless $smtp;
- };
- if ($@) {
- print " ERRROR EN EL CORREO\n";
- }
- else {
- if ( !$smtp->auth( $ServerAccount, $ServerPwd ) ) {
- print "";
- }
- if ( !$smtp->mail($sender) ) {
- print "";
- }
- if ( !$smtp->to($receiver) ) {
- print "";
- }
- if ( !$smtp->to($cc) ) {
- print "";
- }
- my $mime_msg = MIME::Lite->new(
- From => "$sender",
- To => "$receiver",
- Cc => "$cc",
- Subject => "$subject",
- Type => 'multipart/mixed',
- );
- $mime_msg->attach( Type => 'text/html', Data => qq {$body} );
- my $message_header = $mime_msg->header_as_string();
- my $message_body = $mime_msg->body_as_string();
- $smtp->data();
- $smtp->datasend($message_header);
- $smtp->datasend("\n");
- $smtp->datasend($message_body);
- $smtp->dataend();
- $smtp->quit;
- }
- }
- 1;
- ################ Fin librería ################
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Y con un .pl accedo a ella de la siguiente manera:
Using perl Syntax Highlighting
- #############################################################
- require "/var/www/html/gp/enviocorreosgp.lib";
- my $xto = "$ARGV[1]";
- my $cc = "$ARGV[2]";
- my $motivo = "Un motivo cualquiera";
- my $body =" Cuerpo del mensaje";
- &send_mail_to("micorreo\@hotmail.com","$xto","$cc","$motivo","$body")
- ###########################################################
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
No lo hago con hotmail, es solo por poner algo, cambiando los parámetros por los que usa cada uno se podría enviar correo autenticado, pero el $cc se me resiste. De todas formas en el correo que se envía sí que aparece la lista en el CC pero en realidad no los está enviando. ¿Tenéis alguna idea?
Muchas gracias