Envoyer un mail au format html à partir d'un script perl
Je suis en train de travailler sur un environnement unix et avez un script perl pour envoyer un mail, mais j'ai besoin d'envoyer de mail au format HTML,mais il l'impression que c'est un code html. si quelqu'un pourrait s'il vous plaît laissez-moi savoir comment ça manipuler ou de compiler le code html et l'envoyer formaté mail.
#!/usr/bin/perl
#print "Content-type: text/html\n\n";
print("enter my name");
chop($name=<stdin>);
&mail();
sub mail{
$title='perl';
$to='[email protected]';
$from= '[email protected]';
$subject=$name;
open(MAIL, "|/usr/sbin/sendmail -t");
## Mail Header
print MAIL "To: $to\n";
print MAIL "From: $from\n";
print MAIL "Subject: $subject\n\n";
## Mail Body
print MAIL $name;
print MAIL "<html><body><p>";
print MAIL "<b>Hello</b>";
print MAIL "This is a test message from Cyberciti.biz! You can write your";
print MAIL "</p></body></html>";
##print MAIL "$title";
close(MAIL);
}
Son impression dans le mail:
<html><body><p><b>Hello</b>This is a test message from Cyberciti.biz! You can write your</p></body></html>
comme ça...comme il est semble pas le convertir en format html.
Donc merci de m'aider au cours de cette.
vérifier search.cpan.org/~rjbs/MIME-Lite-3.029/lib/MIME/Lite.pm ou search.cpan.org/~rjbs/e-Mail-MIME-1.920/lib/Mail/MIME.pm
juste une question, je ne peux pas utiliser la mise en forme html avec sendmail protocole ?
Double Possible de Comment puis-je envoyer un e-mail HTML avec Perl?
juste une question, je ne peux pas utiliser la mise en forme html avec sendmail protocole ?
Double Possible de Comment puis-je envoyer un e-mail HTML avec Perl?
OriginalL'auteur SteveScm | 2013-06-19
Vous devez vous connecter pour publier un commentaire.
Utilisation Mime::Lite. Ce un exemple:
j'exécute ce code, mais ce n'est pas de l'envoi du courrier , à la place de l'impression de la même ligne sur console. <h1></h1><p>le message a été envoyé à partir d' </p></body></html>
vous devez installer le CPAN MIME::Lite module, et ensuite de l'utiliser. Voir le lien que j'ai fourni
pourrais-je vérifier sur ma machine linux s'il est installé ou pas. Toute commande
exécuter "ppm installer MIME::Lite" si il est installé, il va sauter, si non, il va l'installer.
OriginalL'auteur Miguel Prz
Le correctif pour votre problème est d'ajouter un type de contenu d'en-tête en disant que le mail est text/html.
Cependant.
&
. Il est près de vingt ans de date.OriginalL'auteur Dave Cross
Utilisation
Net::SMTP
au lieuVoici un lien déjà existant sur la façon de l'utiliser en format HTML.
Net::SMTP à l'aide de HTML
Le même lien vous montre également comment vous pouvez Utiliser Mime::Lite.
Rohit889 Net::SMTP est un module perl, il vous permet de faire certaines choses plutôt que de devoir appeler des commandes externes. ainsi, au lieu de vous avoir à appeler "Blat" ou sendmail comme commande externe, il vous suffit d'installer le module et ensuite l'utiliser dans votre script.
Ok Merci Harry. 🙂
Pas tous les modules sont préinstallés sur perl, vous devez installer vous-même. méthode la plus simple consiste à exécuter en ligne de commande "ppm install Net::SMTP" si derrière un pare-feu, exécutez cette première. "définir http_proxy=username:password@proxy_servername_or_IP:port"
Juste une question, je ne peux pas utiliser le html avec sendmail protocole ?
OriginalL'auteur Harry Barry