J'essaie de configurer PHPMailer pour qu'un de nos clients puisse générer automatiquement des e-mails à partir de son propre compte. Je me suis connecté à leur compte Office 365 et j'ai constaté que les paramètres requis pour PHPMailer sont :
Host: smtp.off ice365.com Port: 587 Auth: tls
J'ai appliqué ces paramètres à PHPMailer, mais aucun e-mail n'est envoyé (la fonction que j'appelle concerne notre propre courrier, qui est envoyé depuis un serveur externe (pas celui qui dessert la page Web)).
"host" => "smtp.of fice365.com", "port" => 587, "auth" => true, "secure" => "tls", "username" => "clientemail@off ice365.com", "password" => "clientpass", "to" => "myemail", "from" => "clientemail@of fice365.com", "fromname" => "clientname", "subject" => $subject, "body" => $body, "altbody" => $body, "message" => "", "debug" => false
Est-ce que quelqu'un sait quels paramètres sont requis pour que PHPMailer envoie via smtp.offi ce365.com ?
Mise à jour : mai 2022
Je suis donc aux prises avec ce problème. Je peux fournir la réponse à cette question pour les comptes d’entreprise ayant accès à Exchange Online et Microsoft Admin Center.
TLDR : accédez au centre d'administration et sélectionnez l'utilisateur auquel vous souhaitez envoyer un e-mail. Ensuite, après avoir configuré "SMTP authentifié", regardez les paramètres après "E-mail" et "Application de messagerie" et activez-le simplement.
Vous ne travaillez toujours pas ? Je suis là pour vous, voici comment je l'ai fait fonctionner complètement.
Si vous utilisez MFA, assurez-vous d'utiliser le mot de passe de l'application a/61359150/14148981 comme mentionné dans https://stackoverflow.com/
Exécutez le script
J'espère que cela aidera quelqu'un. Il m'a fallu beaucoup de temps pour trouver cette option.
Obtenez un résumé de toutes les étapes pour les mots de passe et l'authentification des applications :
Le code de @nitin n'a pas fonctionné pour moi car il manquait "tls" dans le paramètre SMTPSecure.
Ceci est une version fonctionnelle. J'ai également ajouté deux lignes commentées que vous pouvez utiliser en cas de problème.