Envoi de mails en mode texte et HTML

  Information

Envoyer des emails massivement ou individuellement.

Propose les 2 modes pour l'envoie de mails: en mode TEXTE et en mode HTML.

  code source classé dans  Mail - Emailing

 
 01    
 02    
 03    
 04    
 05    
 06    
 07    
 08    
 09    
 10    
 11    
 12    
 13    
 14    
 15    
 16    
 17    
 18    
 19    
 20    
 21    
 22    
 23    
 24    
 25    
 26    
 27    
 28    
 29    
 30    
 31    
 32    
 33    
 34    
 35    
 36    
 37    
 38    
 39    
 40    
 41    
 42    
 43    
 44    
 45    
 46    
 47    
 48    
 49    
 50    
 51    
 52    
                               
/*---------------------------------------------------------------*/
/*
Titre : Envoi de mails en mode texte et HTML

URL : https://phpsources.net/code_s.php?id=505
Auteur : KOogar
Date édition : 16 Avril 2009
Date mise a jour : 19 Aout 2019

Rapport de la maj:
- fonctionnement du code vérifié
- modification de la description
*/
/*---------------------------------------------------------------*/

$texte_plain = "titre \n";
$texte_plain .= "votre texte \n";
$texte_plain .= "a ecrire ici \n";

$texte_html = "<strong>titre</strong><br />";
$texte_html .= "votre texte <br />";
$texte_html .= "a ecrire ici <br />";


$mime_boundary = "----nomdusite----".md5(time());
$entetes = "From: nomdusite <services@nomdusite.org>\n";
$entetes .= "Mime-Version: 1.0\n";
$entetes .=
"Content-Type: multipart/alternative; boundary=\"$mime_boundary\"\n";
$entetes .= "X-Sender: <www.nomdusite.org>\n";
$entetes .= "X-Mailer: PHP/" . phpversion() . " \n" ;
$entetes .= "X-Priority: 3 (normal) \n";
$entetes .= "X-auth-smtp-user: services@nomdusite.org\n";
$entetes .= "X-abuse-contact: abuse@nomdusite.org\n";
$entetes .= "Importance: Normal\n";
$entetes .= "Reply-to: services@nomdusite.org\n";


// header texte plain
$mess = "--$mime_boundary\n";
$mess .= "Content-Type: text/plain; charset=ISO-8859-1\n";
$mess .= "Content-Transfer-Encoding: 8bit\n\n";
$mess .= $texte_plain;


// header texte en html

$mess .= "--$mime_boundary\n";
$mess .= "Content-Type: text/html; charset=ISO-8859-1\n";
$mess .= "Content-Transfer-Encoding: 8bit\n\n";
$mess .= $texte_html;
?>

Exemple :

 
 01    
 02    
 03    
 04    
                                
// envoi du mail HTML
$date_mail = date("d-m-Y"); // la date (optionnelle)
mail("nom@adresse_email.org","titre - $date_mail",$mess,$entetes);
?>

      Fonctions du code - Doc officielle PHP

Détail    php.net  
Description
Versions PHP
   date
Formate une date/heure locale
PHP 4, 5, 7 et 8
   mail
Envoi un mail
PHP 4, 5, 7 et 8
   md5
Calcule le md5 d'une chaîne (PHP 4, PHP 5, PHP 7, PECL hash:1.11.3)
PHP 4, 5, 7 et 8
   phpversion
Retourne le numéro de la version courante de PHP
PHP 4, 5, 7 et 8
   time
Retourne le timestamp UNIX actuel
PHP 4, 5, 7 et 8

   Dites merci aux auteurs pour leurs travail, ça ne coûte rien et ça fait toujours plaisir wink

[2]

  • avatar

    Invité

    04 Jan 2022 à 02:02

    Jai pas encore essayé mais merci deja pour le partage 

  • avatar

    Pc249

    23 Avril 2009 à 21:45

    sauf erreur de ma part:
    ne fonctionne pas avec des adresses "hotmail"
    host mx3.hotmail.com[65.55.37.120] said: 550 SC-002
    Mail rejected by Windows Live Hotmail for policy reasons. The mail server
    IP connecting to Windows Live Hotmail has exhibited namespace mining
    behavior. If you are not an email/network admin please contact your
    E-mail/Internet Service Provider for help. Email/network admins, please
    visit http://postmaster.live.com for email delivery information and support
    (in reply to MAIL FROM command)


 Autres snippets qui pourraient vous intéressez

Extrait des adresses e-mails entre des balises html dans un texte

Compatibilité : PHP 5, PHP 7, PHP 8

Cet extrait de code a pour principe de supprimer le contexte HTML et ensuite de récupérer les e-mails

Configurer l'envoi de mails sous Wamp en localhost

Compatibilité : PHP 5, PHP 7, PHP 8

PHP Prestashop - Réaliser l'envoi de mails sous Wamp en localhost en éditant et configurant le fichier sendmail.ini puis faites de même avec le fichier php.ini

Formulaire complet d'envoi de mail

Compatibilité : PHP 5, PHP 7, PHP 8

Le formulaire est complet. Coller le code sur une page et lancer le script. Attention a mettre votre adresse email avant dans le code source.

Envoi un email lorsque MySQL plante

Compatibilité : PHP 5, PHP 7, PHP 8

Test la connexion avec une requete sur une table et si la requete échoue alors on envoie un email au webmaster

Envoi un email lorsque MySQL crash

Compatibilité : PHP 4, PHP 5

Test la connexion et si la requête échoue alors on envoie un email au webmaster. Code compatible php 4 et php 5

* Requêtes exécutées avec Recherche Contextuelle
avatar

KOogar

  16 Avril 2009

  SOURCE   Télécharger

Information sur les mises à jour

Dernière mise à jour :

    19 Aout 2019
    fonctionnement du code vérifié
    modification de la description

22 057 Vues
Compatibilité du code
PHP 5, 7 et 8+