| jeudi 20 décembre 2001 - 19h13 Bonjour, J'ai un probleme avec le module MIME::Lite Voici mon script qui ne plante pas mais je ne recois pas le mail : ============================================================= #!/usr/bin/perl print "Content-type: text/html\n\n"; print "Essai 1.\n"; # Creation d'un message avec plusieurs parties (multipart) use strict ; use MIME::Lite ; my $msg = MIME::Lite->new( From =>'webmaster@nord-immobilier.net', To =>'webmaster@nord-immobilier.net', Subject =>'Un message avec 2 parties...', Type =>'multipart/mixed' ); # Ajout des pieces attachées # Chaque "attach" a les memes arguments que "new": $msg->attach( Type =>'TEXT', Data =>"Here's the GIF file you wanted" ); $msg->attach( Type =>'image/gif', Path =>'/home/ecompo/cgi-bin/tools/image.gif', Filename =>'logo.gif' ); $msg->send("smtp", "smtp.nord-immobilier.net", Timeout=>60) ; D'avance, je vous remercie si vous pouvez m'aider pour ce script parce que je penche sur ce probleme depuis des heures deja :-)
| |
| lundi 24 décembre 2001 - 14h20 Bonjour, personnelement je n'utilise pas MIME::Lite pour faire des mails avec des pièces jointes, j'utilise MIME::Entity de la manière suivante (pas garantie sans erreur) : my($to,$from,$sujet, $message, $filename,$filename2,$type_1, $type_2); $to = 'webmaster@nord-immobilier.net'; $from = 'webmaster@nord-immobilier.net'; $sujet = "Un message avec 2 parties..."; $message = "Le contenu de mon message"; $filename = "/home/moi/file.pdf"; $type_1 = "application/pdf"; $filename2 = "/home/moi/file.gif"; $type_2 = "image/gif"; $mailprog = "/usr/sbin/sendmail"; # où se trouve sendmail $auto_encoding = 'base64'; # données concernant l'encodage de l'attachement au mail $message_type = 'multipart/mixed'; eval('use MIME::Entity;'); # Création du bloc MIME $top = MIME::Entity->build(Type => $message_type,From => $from, To => $to, Subject => $sujet); # Fabrication du corps du message attach $top Data=> $message; # Attachement du fichier $top->attach(Path => $filename, Type => $type_1, Encoding => $auto_encoding); if ($filename2 ne "") { # Attachement du fichier 2 si il existe $top->attach(Path => $filename2, Type => $type_2, Encoding => $auto_encoding); } # Envoyer le mail open MAIL, "|$mailprog -t -i" or die "open: $!"; $top->print(\*MAIL); close MAIL;
| |
| vendredi 04 janvier 2002 - 17h46 Merci pour ta reponse. J'utilise donc MIME::Entity pour faire un zip (script dumpall.cgi) , je recois le mail qui me dit : Attached text follows, filename: attachment1.txt Attachment was not correctly encoded and cannot be retrieved. Attachment filename: nordimmobase1.zip Attachment content-type: application/x-zip-compressed Et le message "l'email a été envoyé" n'est pas affiché : # Envoyer le mail open MAIL, "|$mailprog -t -i" or die "open: $!"; $top->print(\*MAIL); close MAIL; print "<br>l'email a été envoyé";
| |
| vendredi 04 janvier 2002 - 21h45 Bonjour, je ne sais pas d'ou viens le probleme. Au début du script, il y la ligne eval('use MIME::Entity;'); pourriez vous la remplacer par use MIME::Entity; et refaire un test. Si le module est complet est bien installé il ne devrait pas afficher de message d'erreur.
| |
| samedi 05 janvier 2002 - 12h09 Ben non, ca marche pas mieux. C'est p'tet les modules mal configures sur ovh. Par contre, j'ai trouve un script formfile.pl qui permet d'attacher un fichier sans passer par ces modules. J'aurai juste alors un probleme : comment ziper le repertoire complet et l'enregistrer sur le serveur ? Merci encore de votre reponse. Je ferai un lien pour scripts-fr sur mon site.
| |
| samedi 05 janvier 2002 - 23h36 Bonjour, La méthode la plus zimple pour zipper votre fichier est de faire un appel systeme : system("tar","zcf /home/ecompo/cgi-bin/REPERTOIRE/","fichier.tar.gz"); cela créera un fichier fichier.tar.gz dans le répertoire courant. Je viens de faire un test chez OVH, les modules sont correctement installés sur les serveurs du 240 plan, les autres je n'en sais rien. Ne pas oublier de spécifier le chemin correct du sendmail (/usr/sbin/sendmail)
| |
| dimanche 06 janvier 2002 - 19h27 J'ai essaye cette commande system, je suis sur du nom de repertoire, j'ai fait un script d'essai tres simple, il plante pas mais il cree pas le fichier.J'ai l'impression que je suis pas sorti de l'auberge. Pourtant, je suis pas tout a fait novice. Vous avez essaye le script ci-dessus avec MIME::Entity ? (2eme post) sur OVH ? La franchement, je vais me claquer la tete sur les murs. Merci de votre patience :-)
| |
| dimanche 06 janvier 2002 - 21h33 Bonjour, J'avais testé une version allégée de dumpall pour vérifier si le MIME::Entity fonctionnait bien ce qui est le cas. Par contre apparement il n'est pas possible de compresser un fichier chez OVH, tar n'ayant pas l'air d'exister. Il fautdrait leur poser la question pour savoir si il est possible d'utiliser tar (ou un autre programme de compression).
| |
| dimanche 06 janvier 2002 - 21h46 J'oubliais, j'ai testé le script que j'avais donné dans ma 1ere réponse et il fonctionne correctement, je viens de recevoir mon mail avec mes 2 fichiers attachés. Le domaine de test est un 240plan OVH.
| |
| lundi 14 janvier 2002 - 12h55 Le script en question fonctionne sur mon 240plan, ouf ! Je vais leur poser la question pour zip ou tar, s'ils me repondent. Je vous remercie pour tout. :-) Jean-Luc
|