Différences entre versions de « Envoyer un email avec authentification SMTP avec PHP »
(19 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_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_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]] | ||
Ligne 6 : | Ligne 14 : | ||
<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]] | <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' | + | 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 17 : | Ligne 31 : | ||
<!--T:3--> | <!--T:3--> | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
− | // exemple | + | // exemple sur environnement Windows |
<?php | <?php | ||
include("class.phpmailer.php"); | include("class.phpmailer.php"); | ||
Ligne 26 : | 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 = | + | $mail->Port = 587; |
$mail->Username = "votre email"; | $mail->Username = "votre email"; | ||
$mail->Password = "mot de passe"; | $mail->Password = "mot de passe"; | ||
Ligne 49 : | Ligne 64 : | ||
<!--T:4--> | <!--T:4--> | ||
− | Copiez/ | + | 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. |
;$mail->Host = "mail.votredomaine.tld"; | ;$mail->Host = "mail.votredomaine.tld"; | ||
− | : | + | : 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 relai SMTP. |
;$mail->Password = "mot de passe"; | ;$mail->Password = "mot de passe"; | ||
− | : | + | : Votre mot de passe SMTP. |
;$mail->From = "votre email"; | ;$mail->From = "votre email"; | ||
− | : | + | : Adresse e-mail qui apparaîtra en tant qu'expéditeur. |
;$mail->FromName = "votre nom"; | ;$mail->FromName = "votre nom"; | ||
− | : | + | : Nom de l'expéditeur. |
;$mail->Subject = "This is the subject"; | ;$mail->Subject = "This is the subject"; | ||
− | : | + | : 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. |
;$mail->AddReplyTo("votre mail","votre nom"); | ;$mail->AddReplyTo("votre mail","votre nom"); | ||
− | : | + | : Adresse de réponse par défaut. |
;$mail->AddAttachment("./examples/images/phpmailer.gif"); | ;$mail->AddAttachment("./examples/images/phpmailer.gif"); | ||
− | : | + | : Pièce jointe si besoin |
;$mail->AddAddress("adresse destinataire 1","adresse destinataire 2"); | ;$mail->AddAddress("adresse destinataire 1","adresse destinataire 2"); | ||
− | : | + | : Destinataire(s). |
==Informations complémentaires== <!--T:5--> | ==Informations complémentaires== <!--T:5--> | ||
− | + | 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 | + | 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]] |
− | |||
− | |||
− | |||
<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 ?
Activer l'actualisation automatique des commentaires