Différences entre versions de « Envoyer un email avec authentification SMTP avec PHP »

De Ikoula Wiki
Jump to navigation Jump to search
 
(25 versions intermédiaires par 9 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 +
<span data-link_translate_fr_title="Envoyer un email avec authentification SMTP avec PHP"  data-link_translate_fr_url="Envoyer un email avec authentification SMTP avec PHP"></span>[[:fr:Envoyer un email avec authentification SMTP avec PHP]][[fr:Envoyer un email avec authentification SMTP avec PHP]]
 +
<span data-link_translate_he_title="שלחו מייל עם SMTP עם PHP אימות"  data-link_translate_he_url="%D7%A9%D7%9C%D7%97%D7%95+%D7%9E%D7%99%D7%99%D7%9C+%D7%A2%D7%9D+SMTP+%D7%A2%D7%9D+PHP+%D7%90%D7%99%D7%9E%D7%95%D7%AA"></span>[[:he:שלחו מייל עם SMTP עם PHP אימות]][[he:שלחו מייל עם SMTP עם PHP אימות]]
 +
<span data-link_translate_ro_title="Trimite e-mail cu SMTP cu PHP autentificare"  data-link_translate_ro_url="Trimite+e-mail+cu+SMTP+cu+PHP+autentificare"></span>[[:ro:Trimite e-mail cu SMTP cu PHP autentificare]][[ro:Trimite e-mail cu SMTP cu PHP autentificare]]
 +
<span data-link_translate_ru_title="Отправить письмо с SMTP аутентификации PHP"  data-link_translate_ru_url="%D0%9E%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D1%82%D1%8C+%D0%BF%D0%B8%D1%81%D1%8C%D0%BC%D0%BE+%D1%81+SMTP+%D0%B0%D1%83%D1%82%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B8+PHP"></span>[[:ru:Отправить письмо с SMTP аутентификации PHP]][[ru:Отправить письмо с SMTP аутентификации PHP]]
 +
<span data-link_translate_pl_title="Wyślij e-mail z SMTP z PHP uwierzytelniania"  data-link_translate_pl_url="Wy%C5%9Blij+e-mail+z+SMTP+z+PHP+uwierzytelniania"></span>[[:pl:Wyślij e-mail z SMTP z PHP uwierzytelniania]][[pl:Wyślij e-mail z SMTP z PHP uwierzytelniania]]
 +
<span data-link_translate_ja_title="PHP による認証と SMTP でメールを送信します。"  data-link_translate_ja_url="PHP+%E3%81%AB%E3%82%88%E3%82%8B%E8%AA%8D%E8%A8%BC%E3%81%A8+SMTP+%E3%81%A7%E3%83%A1%E3%83%BC%E3%83%AB%E3%82%92%E9%80%81%E4%BF%A1%E3%81%97%E3%81%BE%E3%81%99%E3%80%82"></span>[[:ja:PHP による認証と SMTP でメールを送信します。]][[ja:PHP による認証と SMTP でメールを送信します。]]
 +
<span data-link_translate_ar_title="إرسال البريد الإلكتروني مع SMTP مع مصادقة بي إتش بي"  data-link_translate_ar_url="%D8%A5%D8%B1%D8%B3%D8%A7%D9%84+%D8%A7%D9%84%D8%A8%D8%B1%D9%8A%D8%AF+%D8%A7%D9%84%D8%A5%D9%84%D9%83%D8%AA%D8%B1%D9%88%D9%86%D9%8A+%D9%85%D8%B9+SMTP+%D9%85%D8%B9+%D9%85%D8%B5%D8%A7%D8%AF%D9%82%D8%A9+%D8%A8%D9%8A+%D8%A5%D8%AA%D8%B4+%D8%A8%D9%8A"></span>[[:ar:إرسال البريد الإلكتروني مع SMTP مع مصادقة بي إتش بي]][[ar:إرسال البريد الإلكتروني مع SMTP مع مصادقة بي إتش بي]]
 +
<span data-link_translate_zh_title="发送电子邮件的 SMTP 与 PHP 认证"  data-link_translate_zh_url="%E5%8F%91%E9%80%81%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%E7%9A%84+SMTP+%E4%B8%8E+PHP+%E8%AE%A4%E8%AF%81"></span>[[:zh:发送电子邮件的 SMTP 与 PHP 认证]][[zh:发送电子邮件的 SMTP 与 PHP 认证]]
 +
<span data-link_translate_de_title="Senden Sie e-Mail mit SMTP mit Authentifizierung PHP"  data-link_translate_de_url="Senden+Sie+e-Mail+mit+SMTP+mit+Authentifizierung+PHP"></span>[[:de:Senden Sie e-Mail mit SMTP mit Authentifizierung PHP]][[de:Senden Sie e-Mail mit SMTP mit Authentifizierung PHP]]
 +
<span data-link_translate_nl_title="Stuur e-mail met SMTP met PHP verificatie"  data-link_translate_nl_url="Stuur+e-mail+met+SMTP+met+PHP+verificatie"></span>[[:nl:Stuur e-mail met SMTP met PHP verificatie]][[nl:Stuur e-mail met SMTP met PHP verificatie]]
 +
<span data-link_translate_it_title="Inviare email con SMTP con autenticazione PHP"  data-link_translate_it_url="Inviare+email+con+SMTP+con+autenticazione+PHP"></span>[[:it:Inviare email con SMTP con autenticazione PHP]][[it:Inviare email con SMTP con autenticazione PHP]]
 +
<span data-link_translate_pt_title="Enviar e-mail com SMTP com autenticação PHP"  data-link_translate_pt_url="Enviar+e-mail+com+SMTP+com+autentica%C3%A7%C3%A3o+PHP"></span>[[:pt:Enviar e-mail com SMTP com autenticação PHP]][[pt:Enviar e-mail com SMTP com autenticação PHP]]
 +
<span data-link_translate_es_title="Enviar correo electrónico con SMTP con autenticación de PHP"  data-link_translate_es_url="Enviar+correo+electr%C3%B3nico+con+SMTP+con+autenticaci%C3%B3n+de+PHP"></span>[[:es:Enviar correo electrónico con SMTP con autenticación de PHP]][[es:Enviar correo electrónico con SMTP con autenticación de PHP]]
 +
<span data-link_translate_en_title="Send email with SMTP with PHP authentication"  data-link_translate_en_url="Send+email+with+SMTP+with+PHP+authentication"></span>[[:en:Send email with SMTP with PHP authentication]][[en:Send email with SMTP with PHP authentication]]
  
 
+
{{#seo:
 
+
|title=Envoyer un email avec authentification SMTP avec PHP.
 +
|title_mode=append
 +
|keywords=these,are,your,keywords
 +
|description=Découvrez dans cet article comment envoyer un email avec authentification SMTP avec PHP.
 +
|image=Uploaded_file.png
 +
|image_alt=Wiki Logo
 +
}}
  
 
<!--T:1-->
 
<!--T:1-->
Dans le cadre de l'utilisation d'un hébergement mutualisé Ikoula, il n'est pas possible de générer l'envoi d'email depuis un script PHP non sécurisé, nos serveurs demandant une authentification SMTP.
+
Dans le cadre de l'utilisation d'un hébergement mutualisé Ikoula, il n'est pas possible de générer l'envoi d'e-mails depuis un script PHP non sécurisé, nos {{Template:Serveur}}s mutualisés demandant '''''une authentification SMTP'''''.
  
 
==Via PHPmailer== <!--T:2-->
 
==Via PHPmailer== <!--T:2-->
Ligne 11 : Ligne 31 :
 
<!--T:3-->
 
<!--T:3-->
 
<syntaxhighlight lang="php">
 
<syntaxhighlight lang="php">
// exemple serveur windows ikoula
+
// exemple sur environnement Windows
 
<?php   
 
<?php   
 
   include("class.phpmailer.php");
 
   include("class.phpmailer.php");
Ligne 20 : Ligne 40 :
 
   $mail->IsSMTP();
 
   $mail->IsSMTP();
 
   $mail->SMTPAuth  = true;
 
   $mail->SMTPAuth  = true;
 +
  $mail->SMTPOptions = array('ssl' => array('verify_peer' => false,'verify_peer_name' => false,'allow_self_signed' => true)); // ignorer l'erreur de certificat.
 
   $mail->Host      = "mail.votredomaine.tld";   
 
   $mail->Host      = "mail.votredomaine.tld";   
   $mail->Port      = 25;
+
   $mail->Port      = 587;
 
   $mail->Username  = "votre email";
 
   $mail->Username  = "votre email";
 
   $mail->Password  = "mot de passe";         
 
   $mail->Password  = "mot de passe";         
Ligne 43 : Ligne 64 :
  
 
<!--T:4-->
 
<!--T:4-->
Copiez/coller le code ci-dessous dans votre fichier et adaptez les éléments suivants :
+
Copiez / collez le code ci-dessous dans votre fichier et adaptez les éléments suivants :
 
;$body            = "Test de PHPMailer.";
 
;$body            = "Test de PHPMailer.";
: corps du message à envoyer. Ce dernier peut être en texte brut ou en HTML.
+
: Corps du message à envoyer. Ce dernier peut être en texte brut ou en HTML.
 
;$mail->Host      = "mail.votredomaine.tld";
 
;$mail->Host      = "mail.votredomaine.tld";
: relais SMTP qui va envoyer votre message
+
: Relais SMTP qui va envoyer votre message.
 
;$mail->Username  = "votre email";
 
;$mail->Username  = "votre email";
: votre adresse e-mail, qui sera aussi utilisée pour vous identifier sur le serveur SMTP
+
: Votre adresse e-mail, qui sera aussi utilisée pour vous identifier sur le relai SMTP.
 
;$mail->Password  = "mot de passe";
 
;$mail->Password  = "mot de passe";
: votre mot de passe SMTP
+
: Votre mot de passe SMTP.
 
;$mail->From      = "votre email";
 
;$mail->From      = "votre email";
: adresse e-mail qui apparaîtra en tant qu'expéditeur
+
: Adresse e-mail qui apparaîtra en tant qu'expéditeur.
 
;$mail->FromName  = "votre nom";
 
;$mail->FromName  = "votre nom";
: nom de l'expéditeur
+
: Nom de l'expéditeur.
 
;$mail->Subject    = "This is the subject";
 
;$mail->Subject    = "This is the subject";
: sujet du message
+
: Sujet du message.
 
;$mail->AltBody    = "corps du message au format texte";  
 
;$mail->AltBody    = "corps du message au format texte";  
: corps du message au format texte brut
+
: Corps du message au format texte brut.
 
;$mail->AddReplyTo("votre mail","votre nom");
 
;$mail->AddReplyTo("votre mail","votre nom");
: adresse de réponse par défaut
+
: Adresse de réponse par défaut.
 
;$mail->AddAttachment("./examples/images/phpmailer.gif");
 
;$mail->AddAttachment("./examples/images/phpmailer.gif");
: pièce jointe si besoin
+
: Pièce jointe si besoin
 
;$mail->AddAddress("adresse destinataire 1","adresse destinataire 2");
 
;$mail->AddAddress("adresse destinataire 1","adresse destinataire 2");
: destinataire(s)
+
: Destinataire(s).
  
 
==Informations complémentaires== <!--T:5-->
 
==Informations complémentaires== <!--T:5-->
Lorsqu'on travaille avec des scripts pour envoyer des e-mails, il est important d'avoir en tête que ces derniers sont les premières cibles de détournement par les spammeurs. Il est donc important que vous sécurisiez vos scripts autant que possible.
+
Lorsque nous travaillons avec des scripts pour envoyer des e-mails, il est important d'avoir en tête que ces derniers sont les premières cibles de détournement par les spammeurs. Il est donc important que vous sécurisiez vos scripts autant que possible.
  
 
<!--T:6-->
 
<!--T:6-->
Notre première recommandation est de ne pas utiliser votre boite mail usuelle. Préférez utiliser une adresse qui sera uniquement destinée à cet usage.
+
Notre première recommandation est de ne pas utiliser votre boîte e-mail usuelle. Préférez utiliser une adresse qui sera uniquement destinée à cet usage.
  
 
<!--T:7-->
 
<!--T:7-->
 
Si vous utilisez le code ci-dessus dans un formulaire de contact, nous vous recommandons d'y ajouter des [https://fr.wikipedia.org/wiki/CAPTCHA captchas].
 
Si vous utilisez le code ci-dessus dans un formulaire de contact, nous vous recommandons d'y ajouter des [https://fr.wikipedia.org/wiki/CAPTCHA captchas].
  
 +
Si vous rencontrez des erreurs, vous pouvez activer le "debug" afin d'obtenir plus d'informations sur l'origine de ces dernières. Il vous faudra alors ajouter :
 +
<pre>
 +
  $mail->SMTPDebug = 3;
 +
</pre>
  
 
<!--T:8-->
 
<!--T:8-->
 
<br /><br />
 
<br /><br />
 
Cet article vous a semblé utile ? <vote />
 
Cet article vous a semblé utile ? <vote />
[[Catégorie:PHP]] [[Catégorie:Hébergement_mutualisé]]
+
[[Catégorie:PHP]] [[Catégorie:Hébergement_mutualisé]] [[Category:Hébergement Web]][[Category:Serveur dédié]][[Category:Serveur VPS]]
 
 
<!--T:9-->
 
<!-- Gestion SEO. Indiquez les informations manquantes -->
 
 
<br />
 
<br />
 
<comments />
 
<comments />

Version actuelle datée du 2 janvier 2021 à 16:45

fr:Envoyer un email avec authentification SMTP avec PHP he:שלחו מייל עם SMTP עם PHP אימות ro:Trimite e-mail cu SMTP cu PHP autentificare ru:Отправить письмо с SMTP аутентификации PHP pl:Wyślij e-mail z SMTP z PHP uwierzytelniania ja:PHP による認証と SMTP でメールを送信します。 ar:إرسال البريد الإلكتروني مع SMTP مع مصادقة بي إتش بي zh:发送电子邮件的 SMTP 与 PHP 认证 de:Senden Sie e-Mail mit SMTP mit Authentifizierung PHP nl:Stuur e-mail met SMTP met PHP verificatie it:Inviare email con SMTP con autenticazione PHP pt:Enviar e-mail com SMTP com autenticação PHP es:Enviar correo electrónico con SMTP con autenticación de PHP en:Send email with SMTP with PHP authentication

Dans le cadre de l'utilisation d'un hébergement mutualisé Ikoula, il n'est pas possible de générer l'envoi d'e-mails depuis un script PHP non sécurisé, nos serveurs mutualisés demandant une authentification SMTP.

Via PHPmailer

Voici un exemple de code utilisant PHPmailer.

// exemple sur environnement Windows
<?php  
  include("class.phpmailer.php");
  include("class.smtp.php");
  date_default_timezone_set("Europe/Paris"); 
  $mail             = new PHPMailer(); 
  $body             = "Test de PHPMailer."; 
  $mail->IsSMTP();
  $mail->SMTPAuth   = true;
  $mail->SMTPOptions = array('ssl' => array('verify_peer' => false,'verify_peer_name' => false,'allow_self_signed' => true)); // ignorer l'erreur de certificat.
  $mail->Host       = "mail.votredomaine.tld";  
  $mail->Port       = 587;
  $mail->Username   = "votre email";
  $mail->Password   = "mot de passe";        
  $mail->From       = "votre email"; //adresse d’envoi correspondant au login entré précédemment
  $mail->FromName   = "votre nom"; // nom qui sera affiché
  $mail->Subject    = "This is the subject"; // sujet
  $mail->AltBody    = "corps du message au format texte"; //Body au format texte
  $mail->WordWrap   = 50; // nombre de caractères pour le retour à la ligne automatique
  $mail->MsgHTML($body); 
  $mail->AddReplyTo("votre mail","votre nom");
  $mail->AddAttachment("./examples/images/phpmailer.gif");// pièce jointe si besoin
  $mail->AddAddress("adresse destinataire 1","adresse destinataire 2");
  $mail->IsHTML(true); // envoyer au format html, passer a false si en mode texte 
  if(!$mail->Send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
  } else {
    echo "Le message à bien été envoyé";
  } 
?>

Copiez / collez le code ci-dessous dans votre fichier et adaptez les éléments suivants :

$body = "Test de PHPMailer.";
Corps du message à envoyer. Ce dernier peut être en texte brut ou en HTML.
$mail->Host = "mail.votredomaine.tld";
Relais SMTP qui va envoyer votre message.
$mail->Username = "votre email";
Votre adresse e-mail, qui sera aussi utilisée pour vous identifier sur le relai SMTP.
$mail->Password = "mot de passe";
Votre mot de passe SMTP.
$mail->From = "votre email";
Adresse e-mail qui apparaîtra en tant qu'expéditeur.
$mail->FromName = "votre nom";
Nom de l'expéditeur.
$mail->Subject = "This is the subject";
Sujet du message.
$mail->AltBody = "corps du message au format texte";
Corps du message au format texte brut.
$mail->AddReplyTo("votre mail","votre nom");
Adresse de réponse par défaut.
$mail->AddAttachment("./examples/images/phpmailer.gif");
Pièce jointe si besoin
$mail->AddAddress("adresse destinataire 1","adresse destinataire 2");
Destinataire(s).

Informations complémentaires

Lorsque nous travaillons avec des scripts pour envoyer des e-mails, il est important d'avoir en tête que ces derniers sont les premières cibles de détournement par les spammeurs. Il est donc important que vous sécurisiez vos scripts autant que possible.

Notre première recommandation est de ne pas utiliser votre boîte e-mail usuelle. Préférez utiliser une adresse qui sera uniquement destinée à cet usage.

Si vous utilisez le code ci-dessus dans un formulaire de contact, nous vous recommandons d'y ajouter des captchas.

Si vous rencontrez des erreurs, vous pouvez activer le "debug" afin d'obtenir plus d'informations sur l'origine de ces dernières. Il vous faudra alors ajouter :

  $mail->SMTPDebug = 3; 



Cet article vous a semblé utile ?

1



Vous n'êtes pas autorisé à publier de commentaire.