Page 1 sur 1

Mail envoyé en double avec Google Chrome

Posté : 06 janv. 2011, 11:46
par Castor Gaspard
Bonjour,

Je rencontre un comportement étrange en testant la fonction mail(). Quand j'appelle le fichier avec Firefox, l'envoi s'effectue normalement. En revanche, quand j'appelle la même page avec Google Chrome, l'envoi est effectué en double. C'est fâcheux ! Avez-vous entendu parler de ce bogue ? :mrgreen:

Le code, expérimental, de ma page est pourtant des plus basiques...
$boundary = "nextPart";

$headers = "MIME-Version: 1.0\r\n";
$headers .= "From: Me <[email protected]>\r\n";
$headers .= "Content-Type: multipart/alternative; boundary = $boundary\r\n";

//text version
$headers .= "\n--$boundary\n"; // beginning \n added to separate previous content
$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";
$headers .= "This is the plain version";

//html version
$headers .= "\n--$boundary\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "This is the <b>HTML</b> version";

mail("[email protected]", "An HTML Message", "", $headers);  // J'ai anonymisé l'adresse délibérement
Merci pour votre aide.

Cordialement,

Gaspard

Re: Mail envoyé en double avec Google Chrome

Posté : 06 janv. 2011, 16:14
par moogli
hum, le navigateur n'envoie pas le mail c'est php ;)

je ne comprend pas pourquoi tu a à la fois texte et htlm, je ne connais pas particulièrement la rfc mail mais ça me parait contradictoire :)

est tu sur qu'il n'y a pas de renvoi / re demande de la page par chrome ?


@

Re: Mail envoyé en double avec Google Chrome

Posté : 06 janv. 2011, 16:23
par Castor Gaspard
Bonjour,

Merci, Moogli, de t'intéresser à ma question. :D

Bah, en fait, j'ai rencontré le problème avec la célèbre classe phpmailer, hier soir. J'ai donc voulu m'en passer et ai testé avec le code manuel que je vous ai présenté. Le bogue persiste. (Peut-être spécifique à Google Chrome sous Ubuntu ?)

Je comprendrai que mon code soit problématique, mais, sous Firefox, il fonctionne parfaitement.
est tu sur qu'il n'y a pas de renvoi / re demande de la page par chrome ?
Comment vérifier ? :mrgreen:

Encore merci.

Cordialement,

Gaspard

Re: Mail envoyé en double avec Google Chrome

Posté : 06 janv. 2011, 16:53
par Spols
tu peux mettre en place un système de session évitant le double envoi, également un compteur d'appel de page (une variable session qui s'incrémente à chaque appel de la page)

Si avec Google chrome ton compteur s'incremente de 2, il pourrait bien s'agir d'un double appel

Est-ce chrome ou chromium ? le 2eme n'est que le code du premier en version libre et au début de son arrivée, je l'avais installé sur mon ubuntu et il y avait des mùaj tous les 2 jours (je ne l'ai plus maintenant)

Re: Mail envoyé en double avec Google Chrome

Posté : 06 janv. 2011, 18:38
par Castor Gaspard
Re...

Merci, merci...

J'ai truffé mon script de compteurs, mais Google Chrome n'effectue pas de doubles appels, semble-t-il, même s'il envoie le mail à deux reprises. ^^

Je sais que Google Chrome (pas Chromium) est ennuyeux avec ses mises à jour, mais beaucoup de visiteurs l'utilisent désormais. Il me semble difficile de m'en affranchir. :D

Cordialement,

Gaspard

Re: Mail envoyé en double avec Google Chrome

Posté : 06 janv. 2011, 20:06
par Castor Gaspard
..

J'ai testé sous Windows, le Bug se produit aussi.

Pourtant, le Log de mon serveur en témoigne, la page n'est appelée qu'une fois.

J'ai signalé le Bug à Google.

A une époque, Google versait quelques dollars quand on signalait un bogue. Je ne pense plus qu'il le fasse, hélas ! :mrgreen: :mrgreen: :mrgreen:

Cordialement,

Gaspard

Re: Mail envoyé en double avec Google Chrome

Posté : 07 janv. 2011, 09:44
par Spols
As tu mis un compteur à coté de ta fonction mail() ?

Re: Mail envoyé en double avec Google Chrome

Posté : 08 janv. 2011, 19:34
par Castor Gaspard
Bonjour,

Merci, Spols,

J'ai mis un compteur près de la fonction mail, en effet. :mrgreen:

De plus, le problème se pose aussi avec la classe Phpmailer.

Donc, je persiste à croire à un bogue de Chrome.

Cordialement,

Gaspard

Re: Mail envoyé en double avec Google Chrome

Posté : 17 juin 2011, 22:53
par Castor Gaspard
Bonjour,

Tiens, je déterre mon vieux sujet des limbes de PhpFrance.

En effet, je n'ai jamais vraiment avancé. Mes scripts ont toujours été doublés par Chrome (ou Chromium, j'utilise Ubuntu), mais personne ne s'en est jamais plaint.

J'ai fini par déduire que j'étais nul, et que je finirai un jour par résoudre l'énigme du problème.

Or, j'aimerai soumettre à votre sagacité ce nouveau problème étrange.

Voilà, j'utilise un Web Service de localisation. En gros, à partir de l'adresse Ip, on m'indique la ville, la région et le pays. Ces informations sont toujours à prendre au conditionnel bien sûr, mais la fonctionnalité est amusante.

Quand je teste sous Mozilla Firefox, aucun problème : j'obtiens 'Bordeaux' -> 'Aquitaine' -> 'France' avec mon adresse Ip.

Sous Chrome, j'obtiens en un clic deux valeurs : 'Bordeaux' -> 'Aquitaine' -> 'France' *et* 'Cambrige' -> 'Masachussets' -> 'United States' avec une deuxième adresse Ip, 128.30.52.73, qui correspond à la machine drwolfe.w3.org.

Etonnant, non ? :mrgreen:

Cordialement,

Gaspard

Re: Mail envoyé en double avec Google Chrome

Posté : 17 juin 2011, 23:01
par Castor Gaspard
...

Je me réponds en direct. Peut-être que la solution aidera un futur lecteur de PhpFrance. :)

Mes scripts sont doublés à cause de l'extension Html Validator. :mrgreen:

Cordialement,

Gaspard