Mes mail semblent partir mais n'arrivent pas !

Résolu/Fermé
emrh Messages postés 427 Date d'inscription mardi 9 décembre 2014 Statut Membre Dernière intervention 16 janvier 2023 - Modifié le 6 juin 2020 à 20:05
emrh Messages postés 427 Date d'inscription mardi 9 décembre 2014 Statut Membre Dernière intervention 16 janvier 2023 - 8 juin 2020 à 08:59
Bonsoir à tous,

Je viens vous demander un peu d'aide pour un problème de réception de mail.
Sur mon site Internet j'ai une page "envoi.php" qui récupère les données du formulaire
de la page précédente "contact.php".
J'ai mis en place mon site fin décembre et tout marchait bien, les emails partaient bien et étaient bien redirigés vers mon Gmail, le top.
Depuis qq jours les visiteurs se plaignent de ne pas recevoir de réponses à leurs mails,
et pour cause, je n'en reçoit aucun !
J'ai fait un test en local en contournant la sécurité de mon Re-Captcha, c'est pareil : RIEN!
J'ai appelé IONOS mon hébergeur, nous avons migré de php 7.3 à 7.4 : RIEN ! On est même
repassés sur d'anciennes version php : toujours rien...
Aucun message d'erreur pour m'aider (sauf si je ne valide pas le Re-Captcha bien sûr).
Savez vous comment suivre mon message pour savoir où il reste coincé ? (log ?)

Je vous donne mon code php mais je ne pense pas que cela vienne de là car je n'ai touché
à rien depuis décembre 2019 !

envoi.php

<?php
session_start();
$_SESSION['nom'] = htmlspecialchars($_POST['nom']);
$_SESSION['prenom'] = htmlspecialchars($_POST['prenom']);
$_SESSION['email'] = htmlspecialchars($_POST['email']);
$_SESSION['telephone'] = htmlspecialchars($_POST['telephone']);
$_SESSION['text'] = htmlspecialchars($_POST['text']);
// Ma clé privée
$secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
// Paramètre renvoyé par le recaptcha
$response = $_POST['g-recaptcha-response'];


$api_url = "https://www.google.com/recaptcha/api/siteverify?secret="
. $secret
. "&response=" . $response
. "&remoteip=" . $remoteip;

$decode = json_decode(file_get_contents($api_url), true);

if ($decode['success'] == true) {
// LE CAPTCHA EST BON => C'est un humain
$nom = $_SESSION['nom'];
$prenom = $_SESSION['prenom'];
$email = $_SESSION['email'];
$telephone = wordwrap($_SESSION['telephone'],2,' ',true);
$text = $_SESSION['text'];
$destinataire = "contact@monsite.fr";
$sujet = "Formulaire de contact site Internet";
$contenu = "\nNom : $nom \nPrenom : $prenom \nTéléphone : $telephone \nE-mail : $email \nMessage : $text";
$entete = "From: $nom \n Reply-To: $email";
mail($destinataire, $sujet, $contenu, $entete);
$ligne1 = "Votre message a bien été envoyé, nous vous répondrons dans les meilleurs délais.";
$ligne2 = "Vous allez être redirigé vers l'accueil, veuillez patienter...";
$h1 = "Envoi du message !";

//header('Refresh: 5; URL= index.php');

//session_destroy();
} else {
// C'est un robot ou le code de vérification est incorrect
$ligne1 = "Désolé, votre code de vérification n'est pas correct...";
$ligne2 = "Vous allez être redirigé vers la page précédente, veuillez patienter...";
$h1 = "Erreur !";?>
<script type="text/javascript">
window.setTimeout('history.back();', 4000);
</script><?php
}
?>



Je penchais pour un problème avec Gmail, mais avec le technicien IONOS nous avons
supprimé la redirection vers Gmail, avons créé une boîte mail IONOS et les messages
n'arrivent même pas chez mon prestataire !

Merci d'avance pour votre aide !



EDIT : mon mail n'arrive pas plus quand je retire complètement la vérif Re-Captcha, ce n'est donc pas ça non plus :-(

8 réponses

jordane45 Messages postés 36866 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 janvier 2023 4 467
6 juin 2020 à 20:32
Bonjour,

Pour commencer, créé un fichier testmail.php sur ton site et places-y simplement ce code
<?php
$destinataire = "contact@monsite.fr"; // en mettant ton adresse mail bien entendu
$msg = " Ceci est juste un test...";
if(mail($destinataire,"Email TEST",$msg)){
  echo " mail envoyé (enfin... normalement...) ";
}else{
   echo " Erreur lors de l'envoi du mail";
} 

ça permettra déjà de savoir si le souci vient de l'envoi de mail à proprement parlé ..ou de ton code (bien qu'il n'y ait rien de particulier dedans visiblement)


Et pour éviter ce genre de souci, tu pourrais passer par un service tel que sendinblue pour gérer l'envoi des mails.
Cela te permettrait, via leur tableau de bord, de t'assurer que les mails sont bien envoyés..
L'offre gratuite autorise 300 mails par jours.
https://fr.sendinblue.com/tarifs/
1