Envoi mail avec PHP 7

Résolu
cs_eli42 Messages postés 143 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 juillet 2023 - Modifié le 25 juin 2018 à 17:13
cs_eli42 Messages postés 143 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 juillet 2023 - 18 févr. 2019 à 22:41
Bonjour

J'ai un gros problème ma fonction pour envoyer des mails beaucoup de destinaire ne recoivent pas mes mail que ce soit en mode test chez moi apache + php 7 + php.ini smtp=smtp.free.fr et depuis OVH

Par contre l'adresse expéditeur c'est une adresse mail@gmail.

J'ai essaye avec PHPMailer ca ne marche pas en $mail->IsSMTP(); mais ca marche en $mail->IsMail();
Mais le résultat est le même la moitié des destinataire ne reçoivent pas les mails.
Vous avez uns astuce ?
Beau Temps Belle Mer
Jorgio


 <?php
function ligne($str)
{
$rn = preg_match("#^[a-z0-9._-]+@(hotmail|live|msn|gmail).[a-z]{2,4}$#", $str) ? "\n" : "\r\n";
return $rn;
}
//----- DECLARE LES VARIABLES
$site = 'monsite.fr';
$from = 'expediteur@gmail.fr';
$nom = 'mon nom';
$to = 'destinataire@fr';
$sujet = 'Sujet test message';
$sujet = html_entity_decode($sujet);
$from = $nom . ' <' . $from . '>';
$message = 'coucou<br>Test';
$message_html = $message;
//----- GENERE LA FRONTIERE DU MAIL
//$eol = PHP_EOL;
$eol = ligne($to);
$limite = md5(uniqid(microtime(), TRUE));
//----- HEADERS DU MAIL
$header = 'Reply-to: ' . $from . $eol;
$header .= 'From: ' . $from . $eol;
$header .= 'Return-Path: ' . $from . $eol;
$header .= 'X-Confirm-Reading-To: ' . $from . $eol;
$header .= 'X-Sender: <' . $site . '>' . $eol;
$header .= 'X-Mailer: PHP/5.3.2' . $eol;
$header .= 'X-auth-smtp-user: ' . $from . $eol;
$header .= 'X-abuse-contact: ' . $from . $eol;
$header .= 'X-Spam-Status: No' . $eol;
$header .= 'Date: ' . date('D, j M Y G:i:s O') . $eol;
$header .= 'MIME-Version: 1.0' . $eol;
$header .= 'Content-Type: multipart/mixed; boundary=' . $limite . $eol;
//----- MESSAGE HTML
$message_ = "";
$message_ .= '--' . $limite . $eol;
$message_ .= 'Content-type: text/html; charset=utf-8' . $eol . $eol;
$message_ .= $message_html . $eol . $eol;
$message_ .= '--' . $limite . '--' . $eol;
//----- ENVOIYER
if (mail($to, $sujet, $message_, $header))
echo 'Envoyé';
else
echo 'Erreur';
?>
 

--
A voir également:

4 réponses

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
25 juin 2018 à 18:13
Si c'est GMail, il faut aussi vérifier les autres dossiers/onglets, car Google s'arroge le droit de trier les mails à la place de l'utilisateur.
0
cs_eli42 Messages postés 143 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 juillet 2023 1
25 juin 2018 à 18:30
Salut henry
J'ai eu les clients au téléphone ils ont bien cherché surtout dans span introuvable

j'ai continuer a faire des test j'ai ouvert plusieurs compte a droite et a gauche :
en modifiant par :

function ligne($str)
{
$rn = preg_match("#^[a-z0-9._-]+@(yahoo).[a-z]{2,4}$#", $str) ? "\n" : "\r\n";
return $rn;
}

J'ai bien recu tous mes mails, mais je doute de la stabilité de cette function sur le serveur OVH

Je pense que je vais déplacer le site chez 1and1

Beau Temps Belle Mer
0