[Ajuda] Código para enviar e-mails

1. [Ajuda] Código para enviar e-mails

Kyn Taino Leonardo
kynwosh

(usa Ubuntu)

Enviado em 19/06/2015 - 15:37h

Boa tarde, tenho esse código em perl que envia emails de uma lista com assunto e corpo, preciso de um que faça isso mas que seja possível anexar algum arquivo da minha escola, alguém pode me ajudar?
Desde já agradeço.


#!/usr/local/bin/perl

$ARGC=@ARGV;
if ($ARGC !=4) {
printf "Você digitou de uma forma errada. Siga as instruções.\n";
printf "INSTRUÇÕES - UND3F1N3D\n";
printf "perl $0 <mailist> <remetente\@mail.com> <assunto> <corpo.html>\n";
printf "Exemplo: perl $0 lista01.txt peu\@msn.com Ola index.html\n";
exit(1);
}

$mailtype = "content-type: text/html";
$sendmail = '/usr/sbin/sendmail';
$sender = $ARGV[1];
$subject = $ARGV[2];
$efile = $ARGV[0];
$emar = $ARGV[0];
open(FOO, $ARGV[3]);
@foo = <FOO>;
$corpo = join("\n", @foo);
open (BANDFIT, "$emar") || die "Can't Open $emar";
$cont=0;

while(<BANDFIT>) {
($ID,$options) = split(/\|/,$_);
chop($options);
foreach ($ID) {
$recipient = $ID;
open (SENDMAIL, "| $sendmail -t");
print SENDMAIL "$mailtype\n";
print SENDMAIL "Subject: $subject\n";
print SENDMAIL "From: $sender\n";
print SENDMAIL "To: $recipient\n\n";
print SENDMAIL "$corpo\n\n";
close (SENDMAIL);
$cont=$cont+1;
printf "$cont Enviado para $recipient";
}
}
close(BANDFIT);



  


2. Re: [Ajuda] Código para enviar e-mails

Lucas
mineirobr

(usa Debian)

Enviado em 30/06/2015 - 10:20h

Tente esse módulo:
https://metacpan.org/pod/Mail::SendEasy

Dai você usa anex ou zipanex, é só apontar o caminho dele no servidor, exemplo:
anex => ['/home/user/foto1.jpg', '/home/user/foto2.jpg']

Falou.


3. Re: [Ajuda] Código para enviar e-mails

Daniel Vinciguerra
dvinciguerra

(usa Debian)

Enviado em 14/10/2015 - 18:31h


Como o @mineirobr falou, é melhor utilizar um modulo caso você possa pois é um tanto chatinho fazer na mão.

Recomento o modulo MIME::Lite (metacpan.org/pod/MIME::Lite) que pode ser baixado e instalado usando o comando abaixo:

perl -MCPAN -e 'install MIME::Lite'


Ou de forma mais pragmática:


cpan MIME::Lite


Isso deve instalar seu modulo e você poderá utilizar conforme a documentação:


use MIME::Lite

# message
my $msg = MIME::Lite->new(
From =>'me@email.com',
To =>'you@email.com',
Subject =>'Hello World',
Type =>'TEXT',
Data =>"Mandando esta imagem pra você...."
);

# attach
$msg->attach(
Type =>'image/jpg',
Path =>'minha_imagem.jpg',
Filename =>'arquivo.jpg'
);

# sending
$msg->send;


Qualquer duvida poste aqui...

Abraço,






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts