Fonction mail() vers Gmail (hébergeur Free)

Résolu/Fermé
Camberwell Messages postés 3 Date d'inscription jeudi 5 décembre 2013 Statut Membre Dernière intervention 6 décembre 2013 - 5 déc. 2013 à 11:39
Camberwell Messages postés 3 Date d'inscription jeudi 5 décembre 2013 Statut Membre Dernière intervention 6 décembre 2013 - 6 déc. 2013 à 22:45
Bonjour,
J'ai crée un site hébergé chez free et ayant une zone membre. Pour valider son inscription sur le site, j'ai conçu, comme sur de nombreux autres sites, un système d'activation en cliquant sur un lien reçu par e-mail. La fonction mail() ayant tendance à faire des siennes chez free, j'ai utilisé une astuce trouvée sur internet consistant à placer la fonction dans une boucle, mesurer le temps qu'elle met à s'exécuter et répéter l'opération jusqu'à ce que le temps d'exécution soit vraisemblable.


function date_getMicroTime()
{
list($usec, $sec) = explode(' ', microtime());
return ((float) $usec + (float) $sec);
}

$total = 0;
$essai=0;
while($total < 1.5 AND $essai<10)
{
$start = date_getMicroTime();
for($i = 0 ; $i < 999999 ; $i++) 1;
mail($mail,$sujet, $texte,$header);
$total = round(date_getMicroTime() - $start, 3);
$essai++;
}

Le code marche très bien et les mails partent à tous les coups... sauf à destination de gmail. Pour une raison inconnue mes utilisateurs ayant un compte gmail ne peuvent pas activer leur comptes, j'ai testé avec ma propre adresse gmail et aucun mail n'arrive. Après recherche sur internet je n'ai trouvé aucune solution c'est pourquoi je me permet de venir poser la question ici. Il y a-t-il quelqu'un qui ai déjà été confronté au problème? Si oui, comment le résoudre?

Merci d'avance pour votre aide,
Camberwell
A voir également:

3 réponses

Doctor C Messages postés 627 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 19 février 2016 398
5 déc. 2013 à 16:15
Après quelques lectures sur le sujet, il semble que le problème pourrait venir de ton header qui serait mal défini.

Pourrais-tu nous montrer comment est défini ta variable
$header
?

Et si tu comprends l'anglais, tu pourrais lire cette réponse à un problème similaire au tien: https://stackoverflow.com/questions/1612287/php-mail-email-not-received/1612333#1612333

0
Camberwell Messages postés 3 Date d'inscription jeudi 5 décembre 2013 Statut Membre Dernière intervention 6 décembre 2013
Modifié par Camberwell le 5/12/2013 à 20:46
Bonsoir Doctor C,
Merci pour ton aide.
Mon header est très simple:

$header = 'From: AUJ <noreply@auj.com>';
0
Doctor C Messages postés 627 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 19 février 2016 398
6 déc. 2013 à 15:39
Est-ce qu'il s'agit d'une adresse valide?

Sinon, je ne suis pas un grand connaisseur des envois automatiques de courriels. Personnellement, je lirais sur les sujets suivants:
- Sender Policy Framework (SPF)
- DomainKeys Identified Mail (DKIM)

Désolé de ne pas pouvoir être d'une grande aide.
Bonne chance!
0
Camberwell Messages postés 3 Date d'inscription jeudi 5 décembre 2013 Statut Membre Dernière intervention 6 décembre 2013
6 déc. 2013 à 22:45
Ok merci tout de même pour ton aide. Le problème s'est peut être corrigé de lui même. Je dis peut être car j'ai modifié la variable $header sur une page et que toute les autres se sont mises à fonctionner au même moment. J'ai maintenant le même header sur chaque page, plus complet.
0