Bonjour à tous, première discussion sur un forum PHP pour moi.
Je rencontre un problème de variable qui ne s'affiche pas correctement dans le sujet d'un email envoyé après l'enregistrement d'un formulaire.
Je vais essayer d'être clair et bref.
J'ai fait un formulaire d'enregistrement à un service. La base de données (MySQL) se rempli correctement et je voudrais envoyer un email de confirmation contenant une référence qui correspond à l'ID de la ligne où le informations sont enregistrées dans la base de données.
J'extrais bien l'ID que je mets dans une variable, et je place cette variable dans le "sujet" ET dans le "message" de la fonction mail(). Mon problème est que ça fonctionne au premier essai, mais au deuxième et aux suivants, le sujet montre toujours le même ID initial alors que le message, lui, contient le bon ID.
Comme si le premier sujet était enregistré en mémoire cache quelque part.
dans mon code, j'ai fait ceci :
Comme expliqué, le premier test me donne un email avec :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 ... $last_id = $db_handle->lastid($query); $conf_subj = 'Vos produits sont maintenant enregistrés'; $conf_msg = '<html><body>Votre enregistrement porte la référence [#'.$last_id.']</body></html>'; $conf_headers = "From: MC Care <care@mariescorner.com>\r\n"; $conf_headers .= "Reply-To: care@mariescorner.com\r\n"; $conf_headers .= "MIME-Version: 1.0\r\n"; $conf_headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; mail( $_POST['email'], '[Registration #'.$last_id.'] '.$conf_subj, $conf_msg, $conf_headers );
Sujet : [Registration #1] Vos produits sont maintenant enregistrés
Message : Votre enregistrement porte la référence [#1]
un second test me donne :
Sujet : [Registration #1] Vos produits sont maintenant enregistrés
Message : Votre enregistrement porte la référence [#2]
un troisième test me donne :
Sujet : [Registration #1] Vos produits sont maintenant enregistrés
Message : Votre enregistrement porte la référence [#3]
Je ne comprend pas, c'est la même variableutilisée de la même manière dans le sujet ou le message et pourtant quand on reçoit l'email, ça n'apparait pas correctement.
Comment dois-je faire?
Partager