Aller au contenu

Messages recommandés

Posté(e)

Bonjour à tous.

Je développe un petit site perso sur mon NAS et je souhaite utiliser la fonction mail() pour envoyer un mail de confirmation.

Je suis sur DSM 7.2.2, et PHP 8.0
J'ai bien configuré les notifications via SMTP Outlook 365 et je reçois bien le mail test du NAS.

image.png.168402ded56249b469873e3511fc7a3d.png

J'ai également configuré le php.ini avec les infos SMTP (car même avec les notifications, le phpinfo() ne m'affichait pas les bonnes informations

image.png.1a5bcb7fd80718b5bc867490245de5d8.png

image.png.277ce2a20136a239c1bb58008d0e1d17.png

image.png.af68ed19b7549fad8b398230f8c54937.png

 

Concernant mon code php, le voici :

$mail = $_POST['mail'];
$objet = "Bonjour";
$message = "Salut à tous !";

$headers = "From: Xxxx <xxxxxxx@hotmail.com>\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers .= "Return-Path: xxxxx@hotmail.com\r\n";
$headers .= "X-Mailer: PHP/" . phpversion();

if (mail($mail,$objet,$message,$headers)) {
	echo "Le mail a été envoyé.";
} else {
	echo "Le mail n'a pas pu être envoyé.";
}

À chaque exécution du code, j'ai donc en retour "Le mail n'a pas pu être envoyé." et j'ai beau vérifier ma messagerie et mes spams, aucun signe du message.

Auriez-vous une idée de ce qui cloche ?

Je vous remercie d'avance pour votre aide.

Posté(e)

Bonsoir et merci. Je vais essayer de tester PHPMailer ce week-end.


J'ai fait d'autres tentatives depuis, en installant notamment Mail Server sur mon synology, je n'ai plus de message d'erreur sur le script PHP, donc le mail s'envoie, mais aucune réception.
Dans les logs de Mail Server ça me dit "sasl authentication failed; server smpt office365 com authentification unsuccessful"
C'est à s'arracher les cheveux 😅

Posté(e) (modifié)

Bonjour, 

j'ai donc installé PHPMailer et ça ne fonctionnait toujours pas.
J'ai fini par changer pour le SMTP gmail et ça fonctionne enfin. Il y avait toujours ce même problème d'authentification avec le SMTP d'Outlook...

Par contre, malgré le fait que mes headers soient formatés, mon mail tombe toujours dans les spams...
Une idée pour résoudre ce problème ?
Voici mon code d'envoie

 

try {
    //Server settings
    //$mail->SMTPDebug = SMTP::DEBUG_SERVER;                      //Enable verbose debug output
    $mail->isSMTP();                                            //Send using SMTP
    $mail->Host       = 'smtp.gmail.com';                     //Set the SMTP server to send through
    $mail->SMTPAuth   = true;                                   //Enable SMTP authentication
    $mail->Username   = 'xxxxxxx@gmail.com';                     //SMTP username
    $mail->Password   = 'xxxxxxxx';                               //SMTP password
    $mail->SMTPSecure = 'ssl';//PHPMailer::ENCRYPTION_SMTPS;            //Enable implicit TLS encryption
    $mail->Port       = 465;                                    //TCP port to connect to; use 587 if you have set `SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS`

	//To load the French version
	$mail->setLanguage('fr', '/PHPMailer/language/phpmailer.lang-fr.php');
	
    //Recipients
    $mail->setFrom('xxxxxx@gmail.com', 'xxxxx');
    $mail->addReplyTo('xxxxxxx@gmail.com');
	$mail->addAddress($maildest);               //Name is optional
		
	//headers
	$mail->CharSet = 'utf-8';
	$mail->addCustomHeader('MIME-Version: 1.0');
	//$mail->addCustomHeader('Content-type: text/html; charset=utf-8');
	$mail->addCustomHeader('X-Mailer: PHP/' . phpversion());
	
    //Content
    $mail->isHTML(true);                                  //Set email format to HTML
    $mail->Subject = "Coucou !";
    $mail->Body    = "Hello !";
    //$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

	$mail->send();
    ?>
	<div style="text-align:center;margin:10px">Le mail a été envoyé.<div>
	<?php
} catch (Exception $e) {
    ?>
	<div style="text-align:center;margin:10px">Le mail n'a pas pu être envoyé.<br><?php echo $mail->ErrorInfo;?><div>
	<?php
}

Merci d'avance.

 

EDIT, j'ai fait au passage un test sur mail tester et j'obtiens pourtant une note de 10/10

image.thumb.png.d0bfc8a8240fe3c25d9e845f4319e965.png

Modifié par Genki

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.