Envoie mail python
extensite
Messages postés
5
Statut
Membre
-
Nabla's Messages postés 18201 Date d'inscription Statut Contributeur Dernière intervention -
Nabla's Messages postés 18201 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Alors, voilà mon problème.
Après des recherches sur Internet, j'ai trouvé des scripts pour l'envoie de mail, mais à des destinataires définis dans le code.
Pour mon application Web, j'aimerais avoir un formulaire avec un champs Destinataire, Objet et Message.
Et ensuite, envoyer le mail à la ou les personne(s) définit dans le formulaire
Voilà quelques bouts de mon code :
templates
Merci de votre aide.
Alors, voilà mon problème.
Après des recherches sur Internet, j'ai trouvé des scripts pour l'envoie de mail, mais à des destinataires définis dans le code.
Pour mon application Web, j'aimerais avoir un formulaire avec un champs Destinataire, Objet et Message.
Et ensuite, envoyer le mail à la ou les personne(s) définit dans le formulaire
Voilà quelques bouts de mon code :
templates
<form method="Post"> <p>Destinataire</p> <input name="champ3" size="40" maxlength="100" type="texte" /></br> .... avec le champ Objet du message nommé par champ1 et le message par champ2
Merci de votre aide.
6 réponses
-
type="texte"
ca marcherait si html avait été rédigé en francais, mais en l'occurence, ce serait plutot
type="text"
Il faudrait voir la paartie python qui doit être plus interessante (laisse l'existant pour la récupération des variables car j'ai jamais fait de CGI python -
Voici ma partie Python présente dans mon views.py :
class EnvoieMail: import sys import os from smtplib import SMTP from email.mime.multipart import MIMEMultipart from email.mime.base import MIMEBase from email.mime.text import MIMEText from email.utils import formatdate from email import Encoders def send_email(senf_from, send_to, subject, files=[], server="localhost" assert types(sent_to)==list assert types(files)==list msg = MIMEMultipart() msg['From'] = send_from msg['To'] = COMMASPACE.join(send_to) msg['Date'] = formatdate(localtime=True) msg['Subject'] = subject for f in files: part = MIMEBase('application', "octet-stream") print f part.set_playload(open(f,"rb").read()) Encoders.encode_base64(part) part.add_header('Content_Disposition', 'attachement filename="%s' %os.path.basename(f)) msg.attach(part) smtp = smtplib.SMTP(server) smtp.sendmail(senf_from, send_to, msg.as_string()) smtp.close() retour = "Une erreur s'est produite lors de l'envoie de mail" files = ["monfichier1", "chemin du fichier'] destinataires = [ 'liste des destinataires' ] try: send_mail('expediteur@monsite.com', 'destinataire', "Sujet du mail", "Texte du message", files, 'smtp.free.fr') except: send_mail('expediteur@monsite.com', [ 'adresse@secours.fr' ], "[ERROR ] Sujet du message", retour, [], 'smtp.free.fr')
J'avais oublié de dire que les pièces jointes doivent être gérées -
Dans ton programme, on ne voit pas comment il récupère les valeurs de champ1 et 2 ...
-
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Si quelqu'un sait comment récupérer les champs, j'aimerais qu'il m'éclaire sur ce sujet.
Mon application est quasi terminé, il me reste ces quelques points à traiter.
Donc, comment récupérer mes champs1, 2 et 3 de mon formulaire et où les placer dans mon code Python pour que mon fonction d'envoi mail fonctionne...
Merci beaucoup -
recherche "formulaire html python" sur google...
http://www.siteduzero.com/tutoriel-3-39020-apercu-de-la-cgi-avec-python.html