CLASS MAIL GESTION COMPLÈTE

mickbad Messages postés 71 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 20 avril 2008 - 26 mai 2007 à 23:37
yassine_910 Messages postés 1 Date d'inscription dimanche 8 juillet 2007 Statut Membre Dernière intervention 27 mars 2010 - 27 mars 2010 à 20:43
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/42851-class-mail-gestion-complete

yassine_910 Messages postés 1 Date d'inscription dimanche 8 juillet 2007 Statut Membre Dernière intervention 27 mars 2010
27 mars 2010 à 20:43
slt ,je veux savoir avec quel serveur tu as travaille??
calfou Messages postés 24 Date d'inscription dimanche 16 février 2003 Statut Membre Dernière intervention 18 mars 2010
18 févr. 2010 à 18:28
Merci pour cette class qui fonctionne super bien et est très facile à intégrer!!

En revanche comme le dit Masternico, il aurait été bon d'ajouter la modif qu'il cite afin de ne pas avoir cette erreur.
masternico Messages postés 487 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 1 septembre 2011
5 juin 2009 à 19:03
Bon, a-y-est... j'ai fini par débusquer mon bug... qui en fait était lié à un post précédent de neoced75.
Le problème, c'est que je n'avait pas d'affichage d'erreur et que la variable errorlog était toujours vide (en passant par geterrorlog())
Donc en fait la soluce avait été donnée par tomguide:

<<
à la ligne 148 (sur le visuel du code)

Vous avez "$this->message = preg_replace($file[1],$file[2], $this->message);"

Seulement, $file[1] et $file[2] n'étant pas toujours renseigné faites une petite verif avant, par exemple, remplacez le code ci-dessus par le suivant :

if(!empty($file[1]) && !empty($file[2])) {
$this->message = preg_replace($file[1],$file[2], $this->message);
}

ça vous évitera d'avoir une petite erreur.

>>

Il serait bien que la modif soit intégrée à la source car j'y ai passé du temps... pour rien puisque la soluce était déja donnée
masternico Messages postés 487 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 1 septembre 2011
5 juin 2009 à 16:36
Salut,
mon soucis est que la variable $this->message se perd en cour de route.
Quand je fait un echo $this->message; à la fin de la proc Defmessage($mess), j'ai bien mon message, mais la variable se retrouve vide lorsque j'arrive dans constructbody()... je pige pas très bien pourquoi...
Si quelqu'un avait une piste pour m'aider

Merci
jdeheyn Messages postés 23 Date d'inscription vendredi 14 avril 2006 Statut Membre Dernière intervention 14 janvier 2010
21 août 2008 à 10:10
Salut!
J'ai la même erreur que TOINE64 : "Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /mnt/160/sda/3/4/avolpoet/classes/Mail.class.php on line 5"

Cela peut-il venir du fait que ce script doit être exécuté sous PHP5, et non PHP4 ?
ptitdragonvert Messages postés 26 Date d'inscription dimanche 15 avril 2007 Statut Membre Dernière intervention 7 novembre 2009
17 févr. 2008 à 11:11
Bien codé !
Mais $this->destinataire incorect !
Au debut j'avais tout le temps :

Warning: mail() [function.mail]: SMTP server response: 501 Bad address syntax in C:\wamp\www\Mail\mail\Mail.class.php on line 380

et en faisant des test la variable $this->destinataire en faisant :
print_r($this->destinataire);

il me resortait :

Array ( [0] => Moi )

Donc marche très mal !
A+
netphotos Messages postés 1 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 14 février 2008
14 févr. 2008 à 19:42
Salut je trouve dommage que quand on met par exemple
en img dans le $mail->defMessage

ca ne marche pas sur gmail par exemple
idem avec d'autre systeme
comment faire car j'ai vraiment d'utiliser votre classe que je trouve tres bien faite
tonguide Messages postés 2 Date d'inscription mercredi 22 septembre 2004 Statut Membre Dernière intervention 20 janvier 2008
20 janv. 2008 à 00:41
Par rapport au bug de NEOCED75

à la ligne 148 (sur le visuel du code)

Vous avez "$this->message = preg_replace($file[1],$file[2], $this->message);"

Seulement, $file[1] et $file[2] n'étant pas toujours renseigné faites une petite verif avant, par exemple, remplacez le code ci-dessus par le suivant :

if(!empty($file[1]) && !empty($file[2])) {
$this->message = preg_replace($file[1],$file[2], $this->message);
}

ça vous évitera d'avoir une petite erreur.
tonguide Messages postés 2 Date d'inscription mercredi 22 septembre 2004 Statut Membre Dernière intervention 20 janvier 2008
19 janv. 2008 à 23:16
Juste une petite erreur de logique qui n'a pas énormement d'importance sur le fonctionnement mais je signale quand même.

sur la méthode 'envoi'
Il y a une succession de if / elseif / elseif etc ...
chacune d'elle vérifie et retourne une erreur dans la variable $erreur (si il y a une erreur evidemment).

Ensuite, on fait un "else {}" et on vérifie que la variable d'erreur est vide puis on execute.

Hors, elle est forcement vide à ce niveau là, vu qu'on a fais des "elseif" et non des "if"

Donc il suffirai juste de remplacer elseif par if (permettant de récupérer la totalité des erreurs en une fois) puis de retirer le 'else' tout en laissant le if(empty($erreur)) (qui aurait alors un intérêt).

Voila ;)

if(empty($this->destinataire))
$erreur .= 'Erreur, vous devez definir au moins un destinataire!';
if(empty($this->expediteur))
$erreur .= 'Erreur, vous devez definir un expediteur!';
if(empty($this->sujet))
$erreur .= 'Erreur, vous devez definir un sujet!';
if(empty($this->message))
$erreur .= 'Erreur, vous devez definir un message!';
if(!$this->htmlattachement())
$erreur .= 'Erreur lors de l\'attachement des fichiers present dans le message html!';

if(empty($erreur)) {

etc...
neoced75 Messages postés 1 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 25 novembre 2007
25 nov. 2007 à 11:27
Bonjour,
Je pensais oublier qqchose, mais je viens de tester avec les options obligatoires et j'obtiens toujours un "Warning: preg_replace() [function.preg-replace]: Empty regular expression ... on line 148"

J'ai utilisé les arguments obligatoires pour faire ce test:

$mail = new Mail();
$mail->addDestinataire('nom mail@domaine.fr');
$mail->defSujet('Bonjour ceci est le sujet');
$mail->defMessage('Bonjour, ceci est un test de ma classe mail :D');
$mail->defExpediteur('nom mail@domaine.fr');
//Par defaut envoi en texte
$mail->envoi();
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
28 sept. 2007 à 18:27
Hello, jolie source,

juste : j'ai une alerte Undefined variable: dest in C:\Program Files\EasyPHP\www\mail.class.php on line 208.

Je n'ai pas trop regardé, mais il me semble que tu as fait l'erreur à d'autres endroits aussi.

Merci
masseur Messages postés 64 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 24 avril 2010
18 juil. 2007 à 11:56
Dans un repertoire j'ai ma classe et un fichier index.php qui contient ceci.
$mail = new Mail();
$mail->addDestinataire('ddd@dddd.fr');
$mail->defSujet('Bonjour ceci est le sujet');
$mail->defMessage('Bonjour, ceci est un test de ma classe mail :D');
$mail->defExpediteur('ddd@dddd.fr');
$mail->addAttach('fichier.csv');
$mail->envoi('html');
Je recois bien le mail mais j'ai pas de pièce jointe comment cela se fait il?

Cordialement.

Jérôme
cs_toine62 Messages postés 1 Date d'inscription jeudi 15 juin 2006 Statut Membre Dernière intervention 5 juillet 2007
5 juil. 2007 à 15:05
bonjour,
j'ai utilisé ta classe sans rien modifier et j'ai le message suivant quand je l'appelle:
"Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /mnt/160/sda/3/4/avolpoet/classes/Mail.class.php on line 5"
Shadow_Membre Messages postés 4 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 20 novembre 2007
14 juin 2007 à 02:57
très bon classe. bonne continuation.
je met 10 (tu la merite).
A+
WildGroup Messages postés 15 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 2 novembre 2010
11 juin 2007 à 21:21
je n'exige rien de tout d'ailleur j'aurrais bien vulu comprendre mieux la commande pour attacher un fichier car malgrée mes efforts beh j'y arrive pas trop .. d'ailleur si on parle de beug .. essay d'envoyer dans le format HTML un code qui est egual a un implode et remplace {vars} tu vera l'espace qu'il peux y avoir (et non pas sur un mais sur plusieurs hosting) depuis le haud de body jusqu'au commencement de <table> bref .. le but de code est bien attent je ne dis pas le contraire mais j'ai demandé just de l'aide au sujet de l'attachement des fichiers
Bref.. J'utilitilise quand meme et je leve le chapeau devant ton travail car pour moi qu'est une enorme economie de temps..
Cordialement...
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
11 juin 2007 à 15:44
mdr!!!!! Depuis quand on exige des codes?
Le but de ma classe est atteint je ne modifierai rien de plus...
A moins qu'un gros bug soit remarqué, mais je ne plierai pas aux exigences de monsieur.
A bonne entendeur salut!
WildGroup Messages postés 15 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 2 novembre 2010
9 juin 2007 à 22:41
j'ai remis tout a ca place enfin come c'etait d'origine et tjr parreil ..
Alors je te demande stp de m'ecrire un mod d'utilisation un peux plus complet pour les pieces jointes car ex: mon fichier se trouve dans le dossier "themes/default/background.gif" et je ne peux pas l'attacher alors que je ne veux/peux pas utiliser le corp email avec des liens de gen http://www.site.com/themes/default/background.gif donc je reformule

Ecris moi stp un code de commande complet pour envoyer un email en html ou je peux personnalisé le fond d'ecran des tableaux avec des images egalement un style css pour le text et div

Merçi infiniment si non le code est tres bien sauf biensur mon niveau debutant car j'avoue que je ne comprend pas tout
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
7 juin 2007 à 18:57
Si tu a modifier les entetes je ne peut pas t'aider!
Il n'y a rien a modifier... Les entetes sont complets!
Et si tu n'as rien c'est parce que tes entetes ne sont pas bon justement...
WildGroup Messages postés 15 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 2 novembre 2010
6 juin 2007 à 02:41
Je l'ai deja fait et rien il me dis bien que l'email a etait envoyé mais rien a fair .. :( j'ai rempli le reste egalement voici la maniere de la quel je l'utile ta class

$mail = new Mail();
$mail->addDestinataire('mon@email.fr');
$mail->defSujet('Sujet email');
$mail->defMessage('Bonjour voiçi un test');
$mail->defExpediteur('admin@email.fr');
$mail->envoi('html');


e voila la fameuse ligne 215 dans mon fichier qui peux bien sur ne pas correspondre si j'ai rajoutées des entêtes ----- $this->message = preg_replace($file[1],$file[2], $this->message); ----


Donc l'email est bien envoyé mais je n'ai pas le contenu de message autrement il est vide come si j'ai rien parametré içi : $mail->defMessage('bla bla bla');

Merçi de m'aider ..
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
5 juin 2007 à 21:33
Pense a afficher le log d'erreur, ca t'aidera...
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
5 juin 2007 à 21:32
@WildGroup:
Warning: preg_replace(): Empty regular expression in /home/www/a28b375468c6548a8bb3e41efd92b082/web/system/include/class.email.php on line 215

Eu ligne 215... Ya pas de preg_replace dans ce coin la c'est bizarre...

Et pour envoyer un mail:
"Tout sauf ce que je mait dans $mail->defMessage('bla bla bla')"
Ca ne suffit pas il faut remplir le reste!
WildGroup Messages postés 15 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 2 novembre 2010
4 juin 2007 à 18:24
J'ai une idée:
quand je r'ajout plusieurs destinataires beh par example dest1 sais que j'ai envoyé l'email au dest2 dest3 etc etc etc car dans le header il marque chaque destinataire.
pour eviter de fair un foreach en d'hors de la class y'as t'il anotre moyen de l'integrer a l'interieur? Ca evite egalement la surcharge de serveur je crois

Bonne travail mais avec des p'tits erreurs (2 jusqu'a maintenant)
WildGroup Messages postés 15 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 2 novembre 2010
4 juin 2007 à 18:08
J'ai egalement une autre probleme le contenu d'email n'est pas affiché. Tout sauf ce que je mait dans $mail->defMessage('bla bla bla')

Merçi encore
WildGroup Messages postés 15 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 2 novembre 2010
4 juin 2007 à 18:02
Salut,
j'ai un p'tit probleme voici le message d'error
Warning: preg_replace(): Empty regular expression in /home/www/a28b375468c6548a8bb3e41efd92b082/web/system/include/class.email.php on line 215

Merçi de m'indiquer le chemin pour resoudre cette probleme
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
30 mai 2007 à 17:29
@ricky03: "Ben je ferai moi, c'était juste une question afin de tout avoir en un. Est-il possible d'envoyer le mail à plusieurs personnes au même temps? Si oui, comment faire cela?"

Oui tu peut l'envoyer a autant de personnes que tu veut... Il suffit de faire addDestinataire... Soit de la premiere facon, destinataire par destinataire:
$mail->addDestinataire('dest1');
$mail->addDestinataire('dest2');
$mail->addDestinataire('dest3');
Soit la deuxieme:
$mail->addDestinataire('dest1', 'dest2', 'dest3', ...);

Mais bon tout ca est expliqué sous le code...


@softghost:
C'est pourtant une fonction intégré a php :S
Bizarre que tu est cette erreur :S ce que tu peut faire c'est commenter la méthode
protected function htmlattachement()
Par contre tu perd l'ajout de pieces jointes dans le corps du message html...
softghost Messages postés 61 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 13 avril 2010
30 mai 2007 à 16:01
Bonjour cerede2000 bonjour tous le monde

je suis entreint de travailler sur une application de mass mailing et je pense que ton code sera utile pour moi au moin pour gagné un peux de temps :)

mais le probleme que j'arrive pas a le testé et je comprend pas d'ou vien cette fonction

### function mime_content_type() ###

le Destinataire(s),Sujet,Message,peice jointe marche bien

mais pas d'envoi
le message d'ereur
Fatal error: Call to undefined function mime_content_type() in Mail.class.php on line 150


merci mille fois
ricky03 Messages postés 3 Date d'inscription dimanche 12 janvier 2003 Statut Membre Dernière intervention 25 juin 2007
30 mai 2007 à 12:19
Ben je ferai moi, c'était juste une question afin de tout avoir en un. Est-il possible d'envoyer le mail à plusieurs personnes au même temps? Si oui, comment faire cela?
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
29 mai 2007 à 16:31
"Bon alors on frise la perfection :D" => :p

(oui je sais c'était inutile ce commentaire :p)
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
29 mai 2007 à 15:22
@ricky03:
Non je ne ferais pas ca tout simplement parce que si tu veut l'intégrer toi dans ton message c'est simple a faire. Et que tout le monde n'as pas envie d'avoir ca dans son message ;)

@codefalse:
Ok, lol alors c'est bon, enfin la maintenant mon code prendra automatiquement tout ce qui contient un attribut src et l'intégrera dans le mail ;)

Bon alors on frise la perfection :D
ricky03 Messages postés 3 Date d'inscription dimanche 12 janvier 2003 Statut Membre Dernière intervention 25 juin 2007
29 mai 2007 à 12:47
Hello,
vraiment pas mal cette classe. Serait-il possible d'intégrer au message pour le destinataire, l'adresse IP, la FAI ,
Serveur (Hôte)... Enfin ce qui serait utile en cas de spam.
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
29 mai 2007 à 10:56
"Hum oui, mais je comprend pas l'interet d'inserer une piece jointe dans l'html a part les images..." => uh ? je parlais des images justement ?! j'ai pas tout compris la :p
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
29 mai 2007 à 01:53
Voila, ajout automatique des pieces jointes html possedant un attribut src ;)
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
28 mai 2007 à 20:27
Hum oui, mais je comprend pas l'interet d'inserer une piece jointe dans l'html a part les images...
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
28 mai 2007 à 18:16
Bon ! pour l'exemple ca commence mal, j'avais une liste de fichier type mais j'ai du tout supprimer.
Il m'en reste quelqu'uns mais aucun pour les images.

Alors voila ce que j'ai :

Une image doit etre de ce type :


avec 001f01c55711$86f4d520$5aa0e852@t777 un truc OBLIGATOIREMENT unique (alors tu fait un truc genre md5(uniqid(time())))

et dans tes pieces jointes, tu dois les mettres comme ceci :
Conten-type : le type;
name="le_nom.ext"
Content-Transfer-Encoding: base64
Content-ID: <001f01c55711$86f4d520$5aa0e852@t777>

C'est la que tu retrouve ton ID, entre crochets!
Fait attention au type, il DOIT etre multipart, et apres je sais plus, c'est deja pas alternative de sur, mais j'hésite entre mixed, parallel ou digest.
Cherche un mail ou tu a des images incluses dedans, et fait un imap_body tu saura vite fait ! :)

Voili voilou !

Pour info :
http://www.phpcs.com/codes/ENVOI-MAIL-FORMAT-HTML-AVEC-POSSIBLITE-UTILISER-FICHIERS_33432.aspx
http://www.mathguide.de/info/tools/media-types/media-types
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
28 mai 2007 à 12:52
Ce qui est vu c'est pour la gestion des erreurs et le sendmail_path ;)
Sinon oui j'attends ton exemple :D
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
28 mai 2007 à 12:16
@ kiki9741 : si mes souvenirs sont bons, le sendmail_path, c'est l'adresse de l'application sendmail, mais uniquement sous un systeme unix. Toi c'est un truc avec smtp_kkchose de mémoire.

@ Cerede2000 : De quoi qui est vu ? T'a trouvé ? ou tu veux quand meme un exemple ?
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
28 mai 2007 à 10:48
Et voila c'est vu ;)
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
28 mai 2007 à 10:38
Hum oui je vais voir ca ;)
cs_wizad Messages postés 355 Date d'inscription samedi 30 octobre 2004 Statut Membre Dernière intervention 14 avril 2009
28 mai 2007 à 10:21
C'est pas mal et bien codé. Un seul point me chagrine, le fait que certaines méthodes affiche d'elle même des éléments sur la sortie standart (echo). Il serait beaucoup plus interréssant et portable de retourner par exemple un booléen pour la réussite et en éventuel message d'erreur (par référence par exemple). Ainsi ta classe serait complètement intégrable dans n'importe quel site.
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
28 mai 2007 à 09:05
En effet il existe ce 5ieme parametre je vais le rajouter c'est simple ca. Je ne l'ai pas mit par choix deja parce que tu ne sait meme pas a quoi il sert mais tu le demande...
Et qu'en plus il est souvent désactivé...
kiki9741 Messages postés 9 Date d'inscription lundi 10 juillet 2006 Statut Membre Dernière intervention 4 juillet 2007
28 mai 2007 à 06:25
Euh... très pratique, il manque des toutes petites choses (déjà cité...) , vraiment bien !

Si je peux posé une question :
la fonction mail peux avoir un cinquième paramètre que tu n'a pas prix en compte, dans la doc de php :



Exemple 3. Envoi d'un mail avec un paramètre de ligne de commande additionnel.

Le paramètre additional_parameters peut être utilisé pour passer un paramètre additionnel au programme configuré à être utilisé pour envoyer les mails en utilisant sendmail_path.

<?php
mail('personne@example.com', 'le sujet', 'le message', null,
'-fwebmaster@example.com');
?>




Quelqu'un peut-il nous faire profité de sa science pour nous expliquer plus en détail (avec d'autres mots peut-être ^^) ce qu'est ce cinquième paramètre

N.B. : pour ma part je bloque un peux sur le "(...) pour envoyer les mails en utilisant sendmail_path (...)", c'est quoi le sendmail_path ? oO

Merci pour tous et toutes ^_^

8/10
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
27 mai 2007 à 18:23
Cool merci :) J'attent ca avec impatience ;)
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
27 mai 2007 à 17:31
J'essaye de te filer ca pour demain ou au pire dans la semaine, car là j'ai rien sur moi ...
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
27 mai 2007 à 16:59
Tu aurais pas un exemple...
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
27 mai 2007 à 16:35
non, tu doit faire attention, ya une syntaxe particuliere, c'est du genre cid:UNIQID (ou UNIQID est un nombre unique) qui pointe dans les pieces jointes sur l'id de la piece en question.
C'est assez tendu a gerer tout ca je te l'accorde :p
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
27 mai 2007 à 15:36
Enfin, quoi que je ne sait pas, car pour mettre une image on a juste a mettre une balise dans le mail et a joindre le fichier...
Donc en faite...
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
27 mai 2007 à 15:11
Oui ca j'y pense a mettre les pieces dans le mail en html ;)
C'est pour la prochaine version :D
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
27 mai 2007 à 15:02
Si tu veux pousser plus loin le code, il faut que tu envisage les mails html avec des fichiers externes (images par ex) inclues dans le mail, qui se charge automatiquement avec le mail. Tu a trois sous types principaux pour le multipart : alternative, mixed, relative
(http://en.wikipedia.org/wiki/MIME)

Le protocol Imap est tres compliqué à mettre en oeuvre quand on veux pousser à fond le travail.

Mais ta source est quand meme tres bien ! :)
9/10 :)
cerede2000 Messages postés 71 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 6 septembre 2013
26 mai 2007 à 23:42
Pour ca:
Cette partie :
# $entete .= "X-Mailer: PHP\n";
# $entete .= "X-auth-smtp-user: webmaster@votresite.com \n";
# $entete .= "X-abuse-contact: abuse@votresite.com \n";

Oui, mais bon j'ai mit ca pour que mon entete soit le plus complet possible mais je doute de l'interet réel ;) A voir...
Merci pour ton commentaire :D
mickbad Messages postés 71 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 20 avril 2008
26 mai 2007 à 23:37
pas mal et bien codé à part le manque de commentaire (pour pinailler un peu).

A propos de pinaillage, tu pourrais aller plus loin dans la configuration de ta classe.

Cette partie :
# $entete .= "X-Mailer: PHP\n";
# $entete .= "X-auth-smtp-user: webmaster@votresite.com \n";
# $entete .= "X-abuse-contact: abuse@votresite.com \n";

.. peut faire l'objet de création de constante (define) en en-tête de ton fichier, afin d'éviter d'aller chercher partout dans le code où ces informations se trouvent (et aussi savoir qu'elles existent ;) )

Ce n'est qu'un exemple c'est tout.

Good work Jim !

.Mick.
Rejoignez-nous