SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
Jean-Marie Renouard 
LightPath 2014©
Le logo PHP est du domaine public 
http://commons.wikimedia.org/wiki/File:PHP-logo.svg 
Ce document est licencié sous licence 
◦Attribution-NonCommercial-ShareAlike 
◦CC BY-NC-SA 
Plus de détails: 
http://creativecommons.org/licenses/by-nc-sa/3.0/fr/ 
LightPath 2014© - http://www.jmrenouard.fr 
2
Configuration PHP 
Envoyer un message simple 
Envoyer un message avec des copies 
Envoyer un message en HTML 
Autres APIs Mail 
Envoyer un message avec pièces jointes 
LightPath 2014© - http://www.jmrenouard.fr 
3
LightPath 2014© - http://www.jmrenouard.fr 
4
API mail supporte SMTP 
La configuration se trouve dans php.ini 
[sendmail] smtp_server=mail.yourdomain.com smtp_port=25 
LightPath 2014© - http://www.jmrenouard.fr 
5
LightPath 2014© - http://www.jmrenouard.fr 
6
Mail: fonction principale d’envoi de mail 
<?php 
// Le message 
$message = "Line 1nLine 2nLine 3"; 
$message = wordwrap($message, 70); 
// Envoi du mail 
mail(‘destinataire@example.com', 'Mon Sujet', $message); 
?> 
LightPath 2014© - http://www.jmrenouard.fr 
7
$to = 'aidan@example.com' . ', '; // notez la virgule 
$to .= 'wez@example.com'; // En-têtes additionnels 
$headers .= 'To: Mary <mary@example.com>, Kelly <kelly@example.com>' . "rn"; 
$headers .= 'From: Anniversaire <anniversaire@example.com>' . "rn"; 
$headers .= 'Cc: anniversaire_archive@example.com' . "rn"; 
$headers .= 'Bcc: anniversaire_verif@example.com' . "rn"; 
// Envoi 
mail($to, $subject, $message, $headers); 
LightPath 2014© - http://www.jmrenouard.fr 
8
Le message en HTML 
◦$message = ’<html>…</html>’; 
Les entêtes MAIL pour l’HTML 
$headers = 'MIME-Version: 1.0' . "rn"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "rn"; 
L’envoi du email 
 mail($to, $subject, $message, $headers); 
LightPath 2014© - http://www.jmrenouard.fr 
9
API PHP trop pauvre 
Utilisation API tiers préconisés. 
LightPath 2014© - http://www.jmrenouard.fr 
10
LightPath 2014© - http://www.jmrenouard.fr 
11
foreach ($list as $name => $address) { $this->email->clear(); $this->email->to($address); $this->email->from('your@example.com'); $this->email->subject(‘petit message '.$name); $this->email->message(‘Bonjour '.$name.' , et bonne journée.'); $this->email->send(); } 
LightPath 2014© - http://www.jmrenouard.fr 
12
$tr = new Zend_Mail_Transport_Smtp(‘smtp.gmail.com'); 
$mail->setFrom('a@gmail.com', 'Server'); 
$mail->addTo($to, 'a@gmail.com'); 
$mail->setSubject($subject); 
$mail->setBodyText($body); 
$mail->send(); 
LightPath 2014© - http://www.jmrenouard.fr 
13
include('Mail.php'); 
$mail = Mail::factory("mail"); 
$headers = array( 
"From"=>"me@example.com", 
"Subject"=>"Test Mail« 
); 
$body = "This is a test! » ; 
$mail->send("best@friend.com", $headers, $body); 
LightPath 2014© - http://www.jmrenouard.fr 
14
LightPath 2014© - http://www.jmrenouard.fr 
15
foreach ($list as $name => $address) { $this->email->clear(); $this->email->to($address); $this->email->from('your@example.com'); $this->email->subject(‘petit message '.$name); $this->email->message(‘Bonjour '.$name.' , et bonne journée.'); 
$this->email->attach('/path/to/photo1.jpg'); $this->email->send(); } 
LightPath 2014© - http://www.jmrenouard.fr 
16
$mail = new Zend_Mail(); 
$mail->setFrom('a@gmail.com', 'Server'); 
$mail->addTo($to, 'a@gmail.com'); 
$mail->setSubject($subject); 
$mail->setBodyText($body); 
$mail->createAttachment($someBinaryString); 
$mail->createAttachment($myImage, 
'image/gif', 
Zend_Mime::DISPOSITION_INLINE, 
Zend_Mime::ENCODING_BASE64); 
$mail->send(); 
LightPath 2014© - http://www.jmrenouard.fr 
17
include('Mail.php'); 
include_once('Mail_Mime/mime.php'); 
$msg = new Mail_mime() ; 
$headers = array( 
"From"=>"me@example.com", 
"Subject"=>"Test Mail » 
); 
$body = "This is a test! » ; 
$ msg ->addAttachment(« mon Fichier.txt »); 
$mail =& Mail::factory('mail'); 
$mail->send("best@friend.com", $headers, $body); 
LightPath 2014© - http://www.jmrenouard.fr 
18
LightPath: 
◦Société de conseil et d’ingénierie 
◦Formations, Conseil, Audit et mise en oeuvre 
◦jmrenouard@lightpath.fr 
Jean-Marie RENOUARD 
◦jmrenouard@gmail.com 
◦Twitter: @jmrenouard 
◦http://www.jmrenouard.fr 
LightPath 2014© - http://www.jmrenouard.fr 
19

Más contenido relacionado

La actualidad más candente

Pratique de la programmation en go
Pratique de la programmation en goPratique de la programmation en go
Pratique de la programmation en go
kader15
 
Soutenance Zend Framework vs Symfony
Soutenance Zend Framework vs SymfonySoutenance Zend Framework vs Symfony
Soutenance Zend Framework vs Symfony
Vincent Composieux
 
PHP5 - POO
PHP5 - POOPHP5 - POO
PHP5 - POO
mazenovi
 

La actualidad más candente (18)

Présentation de PHP
Présentation de PHPPrésentation de PHP
Présentation de PHP
 
Javascript et JQuery
Javascript et JQueryJavascript et JQuery
Javascript et JQuery
 
MVC / Frameworks PHP
MVC / Frameworks PHPMVC / Frameworks PHP
MVC / Frameworks PHP
 
Sécurité et Quaité de code PHP
Sécurité et Quaité de code PHPSécurité et Quaité de code PHP
Sécurité et Quaité de code PHP
 
Configuration PHP5
Configuration PHP5Configuration PHP5
Configuration PHP5
 
SQL et MySQL
SQL et MySQLSQL et MySQL
SQL et MySQL
 
Beautiful CSS : Structurer, documenter, maintenir
Beautiful CSS : Structurer, documenter, maintenirBeautiful CSS : Structurer, documenter, maintenir
Beautiful CSS : Structurer, documenter, maintenir
 
Pratique de la programmation en go
Pratique de la programmation en goPratique de la programmation en go
Pratique de la programmation en go
 
Trucs et astuces PHP et MySQL
Trucs et astuces PHP et MySQLTrucs et astuces PHP et MySQL
Trucs et astuces PHP et MySQL
 
Bases de PHP - Partie 1
Bases de PHP - Partie 1Bases de PHP - Partie 1
Bases de PHP - Partie 1
 
Etes vous-pret pour php8 ?
Etes vous-pret pour php8 ?Etes vous-pret pour php8 ?
Etes vous-pret pour php8 ?
 
Formation PHP
Formation PHPFormation PHP
Formation PHP
 
Cours php
Cours phpCours php
Cours php
 
Soutenance Zend Framework vs Symfony
Soutenance Zend Framework vs SymfonySoutenance Zend Framework vs Symfony
Soutenance Zend Framework vs Symfony
 
Cours php & Mysql - 3éme partie
Cours php & Mysql - 3éme partieCours php & Mysql - 3éme partie
Cours php & Mysql - 3éme partie
 
PHP5 - POO
PHP5 - POOPHP5 - POO
PHP5 - POO
 
Php cours
Php coursPhp cours
Php cours
 
Open close principle, on a dit étendre, pas extends !
Open close principle, on a dit étendre, pas extends !Open close principle, on a dit étendre, pas extends !
Open close principle, on a dit étendre, pas extends !
 

Similar a Email et PHP5

Communications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPCommunications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHP
julien pauli
 
technologies web chapitre 4 -php-.pptx
technologies web chapitre 4 -php-.pptxtechnologies web chapitre 4 -php-.pptx
technologies web chapitre 4 -php-.pptx
tirike6016
 

Similar a Email et PHP5 (20)

Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdfCours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
 
Lp web tp3_idse
Lp web tp3_idseLp web tp3_idse
Lp web tp3_idse
 
Communications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPCommunications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHP
 
Quoi de neuf dans Zend Framework 1.10 ?
Quoi de neuf dans Zend Framework 1.10 ?Quoi de neuf dans Zend Framework 1.10 ?
Quoi de neuf dans Zend Framework 1.10 ?
 
Formation php pdo
Formation php pdoFormation php pdo
Formation php pdo
 
Ouvrir vos plugins aux autres développeurs - WPTech Nantes
Ouvrir vos plugins aux autres développeurs - WPTech NantesOuvrir vos plugins aux autres développeurs - WPTech Nantes
Ouvrir vos plugins aux autres développeurs - WPTech Nantes
 
Mieux Développer en PHP avec Symfony
Mieux Développer en PHP avec SymfonyMieux Développer en PHP avec Symfony
Mieux Développer en PHP avec Symfony
 
Php 7.4 2020-01-28 - afup
Php 7.4   2020-01-28 - afupPhp 7.4   2020-01-28 - afup
Php 7.4 2020-01-28 - afup
 
Cours php -partie 1.pdf
Cours php -partie 1.pdfCours php -partie 1.pdf
Cours php -partie 1.pdf
 
PHP mysql Xml.pdf
PHP mysql Xml.pdfPHP mysql Xml.pdf
PHP mysql Xml.pdf
 
WordPress + HTTPS
WordPress + HTTPSWordPress + HTTPS
WordPress + HTTPS
 
PHP mysql Xml.doc
PHP mysql Xml.docPHP mysql Xml.doc
PHP mysql Xml.doc
 
Migration PHP4-PHP5
Migration PHP4-PHP5Migration PHP4-PHP5
Migration PHP4-PHP5
 
technologies web chapitre 4 -php-.pptx
technologies web chapitre 4 -php-.pptxtechnologies web chapitre 4 -php-.pptx
technologies web chapitre 4 -php-.pptx
 
Web Service API Odoo - android
Web Service API Odoo - androidWeb Service API Odoo - android
Web Service API Odoo - android
 
Enrichir vos contenus Wordpress avec les API - WPTech 2015
Enrichir vos contenus Wordpress avec les API - WPTech 2015Enrichir vos contenus Wordpress avec les API - WPTech 2015
Enrichir vos contenus Wordpress avec les API - WPTech 2015
 
La référence Clear php
La référence Clear phpLa référence Clear php
La référence Clear php
 
Php 7 Think php7
Php 7 Think php7Php 7 Think php7
Php 7 Think php7
 
Wordpress et la sécurité des plugins
Wordpress et la sécurité des pluginsWordpress et la sécurité des plugins
Wordpress et la sécurité des plugins
 
Architecture PHP 3 tier avec Zend en backend de Drupal
Architecture PHP 3 tier avec Zend en backend de DrupalArchitecture PHP 3 tier avec Zend en backend de Drupal
Architecture PHP 3 tier avec Zend en backend de Drupal
 

Más de Jean-Marie Renouard (8)

Manuel De Securite 1.8 (Mise à jour avec DOCKER)
Manuel De Securite  1.8 (Mise à jour avec DOCKER)Manuel De Securite  1.8 (Mise à jour avec DOCKER)
Manuel De Securite 1.8 (Mise à jour avec DOCKER)
 
ManuelDeSecurite-1.7.pdf
ManuelDeSecurite-1.7.pdfManuelDeSecurite-1.7.pdf
ManuelDeSecurite-1.7.pdf
 
Manuel de sécurité Linux
Manuel de sécurité Linux Manuel de sécurité Linux
Manuel de sécurité Linux
 
Les structures de données PHP5
Les structures de données PHP5Les structures de données PHP5
Les structures de données PHP5
 
Ssh cookbook v2
Ssh cookbook v2Ssh cookbook v2
Ssh cookbook v2
 
Ssh cookbook
Ssh cookbookSsh cookbook
Ssh cookbook
 
Manuel de sécurisation d'un serveur Linux
Manuel de sécurisation d'un serveur LinuxManuel de sécurisation d'un serveur Linux
Manuel de sécurisation d'un serveur Linux
 
Structure de données en PHP
Structure de données en PHPStructure de données en PHP
Structure de données en PHP
 

Email et PHP5

  • 2. Le logo PHP est du domaine public http://commons.wikimedia.org/wiki/File:PHP-logo.svg Ce document est licencié sous licence ◦Attribution-NonCommercial-ShareAlike ◦CC BY-NC-SA Plus de détails: http://creativecommons.org/licenses/by-nc-sa/3.0/fr/ LightPath 2014© - http://www.jmrenouard.fr 2
  • 3. Configuration PHP Envoyer un message simple Envoyer un message avec des copies Envoyer un message en HTML Autres APIs Mail Envoyer un message avec pièces jointes LightPath 2014© - http://www.jmrenouard.fr 3
  • 4. LightPath 2014© - http://www.jmrenouard.fr 4
  • 5. API mail supporte SMTP La configuration se trouve dans php.ini [sendmail] smtp_server=mail.yourdomain.com smtp_port=25 LightPath 2014© - http://www.jmrenouard.fr 5
  • 6. LightPath 2014© - http://www.jmrenouard.fr 6
  • 7. Mail: fonction principale d’envoi de mail <?php // Le message $message = "Line 1nLine 2nLine 3"; $message = wordwrap($message, 70); // Envoi du mail mail(‘destinataire@example.com', 'Mon Sujet', $message); ?> LightPath 2014© - http://www.jmrenouard.fr 7
  • 8. $to = 'aidan@example.com' . ', '; // notez la virgule $to .= 'wez@example.com'; // En-têtes additionnels $headers .= 'To: Mary <mary@example.com>, Kelly <kelly@example.com>' . "rn"; $headers .= 'From: Anniversaire <anniversaire@example.com>' . "rn"; $headers .= 'Cc: anniversaire_archive@example.com' . "rn"; $headers .= 'Bcc: anniversaire_verif@example.com' . "rn"; // Envoi mail($to, $subject, $message, $headers); LightPath 2014© - http://www.jmrenouard.fr 8
  • 9. Le message en HTML ◦$message = ’<html>…</html>’; Les entêtes MAIL pour l’HTML $headers = 'MIME-Version: 1.0' . "rn"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "rn"; L’envoi du email  mail($to, $subject, $message, $headers); LightPath 2014© - http://www.jmrenouard.fr 9
  • 10. API PHP trop pauvre Utilisation API tiers préconisés. LightPath 2014© - http://www.jmrenouard.fr 10
  • 11. LightPath 2014© - http://www.jmrenouard.fr 11
  • 12. foreach ($list as $name => $address) { $this->email->clear(); $this->email->to($address); $this->email->from('your@example.com'); $this->email->subject(‘petit message '.$name); $this->email->message(‘Bonjour '.$name.' , et bonne journée.'); $this->email->send(); } LightPath 2014© - http://www.jmrenouard.fr 12
  • 13. $tr = new Zend_Mail_Transport_Smtp(‘smtp.gmail.com'); $mail->setFrom('a@gmail.com', 'Server'); $mail->addTo($to, 'a@gmail.com'); $mail->setSubject($subject); $mail->setBodyText($body); $mail->send(); LightPath 2014© - http://www.jmrenouard.fr 13
  • 14. include('Mail.php'); $mail = Mail::factory("mail"); $headers = array( "From"=>"me@example.com", "Subject"=>"Test Mail« ); $body = "This is a test! » ; $mail->send("best@friend.com", $headers, $body); LightPath 2014© - http://www.jmrenouard.fr 14
  • 15. LightPath 2014© - http://www.jmrenouard.fr 15
  • 16. foreach ($list as $name => $address) { $this->email->clear(); $this->email->to($address); $this->email->from('your@example.com'); $this->email->subject(‘petit message '.$name); $this->email->message(‘Bonjour '.$name.' , et bonne journée.'); $this->email->attach('/path/to/photo1.jpg'); $this->email->send(); } LightPath 2014© - http://www.jmrenouard.fr 16
  • 17. $mail = new Zend_Mail(); $mail->setFrom('a@gmail.com', 'Server'); $mail->addTo($to, 'a@gmail.com'); $mail->setSubject($subject); $mail->setBodyText($body); $mail->createAttachment($someBinaryString); $mail->createAttachment($myImage, 'image/gif', Zend_Mime::DISPOSITION_INLINE, Zend_Mime::ENCODING_BASE64); $mail->send(); LightPath 2014© - http://www.jmrenouard.fr 17
  • 18. include('Mail.php'); include_once('Mail_Mime/mime.php'); $msg = new Mail_mime() ; $headers = array( "From"=>"me@example.com", "Subject"=>"Test Mail » ); $body = "This is a test! » ; $ msg ->addAttachment(« mon Fichier.txt »); $mail =& Mail::factory('mail'); $mail->send("best@friend.com", $headers, $body); LightPath 2014© - http://www.jmrenouard.fr 18
  • 19. LightPath: ◦Société de conseil et d’ingénierie ◦Formations, Conseil, Audit et mise en oeuvre ◦jmrenouard@lightpath.fr Jean-Marie RENOUARD ◦jmrenouard@gmail.com ◦Twitter: @jmrenouard ◦http://www.jmrenouard.fr LightPath 2014© - http://www.jmrenouard.fr 19