Résolu Envoi de mail avec variables dans le message

G

Guest

Invité
Bonjour à tous,

Je n'arrive pas a envoyé des mail du moment que je concatène une variable.

Je m'explique ce script fonctionne correctement:


PHP:
$corp_mail = "<html><body>" .
"<h1>Test Email</h1>".
"<b><u>Ceci est un document HTML</u></b><br>".
"Avec differentes tailles de caractères et ".
"<font color=\"red\">couleurs</font>" .
"</body></html>";

		
$destinataire = "destinataire@monsite.com";
$expediteur   = "moi@monsite.com";
$reponse      = $expediteur;
		
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$headers .= "Content-Transfer-Encoding: binary\n\n";

		
echo 'La demande a été faite à ',$destinataire;
mail($destinataire, "Demande de materiel", $corp_mail, $headers);


Si je concatène une variable, exemple avec $datejour: je reçois un mail comme ça (H@J@H@J@)

PHP:
$datejour = date("d/m/Y");

$corp_mail = "<html><body>" .
"<h1>Test Email</h1>".
"<b><u>Ceci est un document HTML</u></b><br>".
"Avec differentes tailles de caractères et ".
"<font color=\"red\">couleurs</font> nous somme le $datejour" .
"</body></html>";

		
$destinataire = "destinataire@monsite.com";
$expediteur   = "moi@monsite.com";
$reponse      = $expediteur;
		
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$headers .= "Content-Transfer-Encoding: binary\n\n";

		
echo 'La demande a été faite à ',$destinataire;
mail($destinataire, "Demande de materiel", $corp_mail, $headers);


Si quelqu'un pourrais m'aider ce serais super !!!!
 

Twin69

Nouveau membre


La date s'affiche bien sur ma page, pas de problème. En fait mon mail que je voudrais envoyer est plus complexe que ça. J'ai à la base plusieurs variables, comme je me suis aperçu que ça venait de là, j'ai simplifié mon script pour facilité mes recherches.

Ca fait plus de 3 jours que je cherche une solution :??:.

Je fais mes envoies de mail en passant par le serveur SMTP de Google j'ai fait un essai avec hotmail le résultat est identique.

Merci de votre aide
 

zeb

Modérateur
Bonjour,

Dans le premier message, merci d'utiliser les balises [code][/code] plutôt que [i][/i], en conformité avec le règlement !
[:zeb:6]
 

Twin69

Nouveau membre


Désolé :sarcastic:
De mon coté j'ai toujours pas trouver une solution a mon problème.
Il y a pas des expert ici? :??:

 

zeb

Modérateur
Salut,

Oh, si. Mais les experts aiment à ce qu'on les respecte un tant soit peu.
Dans la vraie vie, il y a des codes de conduite qui montrent ce respect.

Sur un forum, c'est un peu différent, mais cela revient au même.
Quelqu'un va passer un peu de temps pour que tu en gagnes. Et sa seule rétribution sera la marque de respect a priori et la marque de gratitude a posteriori.

Le vouvoiement n'est pas de rigueur, t'as pas à porter une cravate pour demander un truc à plus important que toi ( :sarcastic: ), etc.
En revanche, on exige deux choses : d'être poli (Bonjour, s'il vois plaît - normal quoi. D'ailleurs, il n'y a pas eu à te le demander) et de respecter le règlement. Or tu ne l'as pas fait et tu refuses de [ou tu n'as pas compris qu'il fallait] corriger ton message.

Tu vois, ce n'est vraiment pas grand chose (heureusement, sinon le modérateur aurait dû sévir !!!!) mais pour certains c'est important.
 

Twin69

Nouveau membre


Ok je suis contient que j'ai fait une erreur, je me suis excusé j'ai tenter de la réparer, car effectivement ce serais beaucoup plus clair. Malheureusement je suis pas arriver à corriger mon message posté !!! :(
Vous pouvez donc clôturer mon message qui débouchera sur aucune réponse de votre part pour cause je n'arrive pas a corrigé mon message.
Désolé de la perte de temps et ne pas avoir respecté les réglés.


 

Twin69

Nouveau membre


Je peu modifier les autres messages mais pas le 1er.
Désolé
 

Sylvain37

Grand Maître
Bonjour,

Ce problème m'étonne, mais on va essayer un truc : As-tu confirmé l'inscription de ton compte en cliquant sur le lien qui t'avait été envoyé par e-mail le 4 décembre ?
 

Twin69

Nouveau membre



Bien sur sinon je n'aurais pas eu mon mot de passe
le preuve

 

zeb

Modérateur
@Sylvain:
Quoi, je pourris ce brave Twin69 parce qu'il est pas fichu de cliquer sur un bouton et en fait il s'agirait d'un bug du forum ?! Ah bravo. J'ai pas l'air con moi maintenant. :/

----------------

@Twin:
Quand je lâche ma casquette de modérateur, je m'investis toujours un peu dans mes réponses. Aussi suis-je exigeant d'une part, et j'évite de trop en faire pour un neuneu-pas-fichu-de-cliquer-sur-un-bouton d'autre part.

Dans le cas présent, il semble que tu ne fasses pas partie de cette catégorie de personnes. Désolé.... :(
 

zeb

Modérateur
Je n'arrive pas à croire que le problème est le fait de concaténer une variable.
Je pense qu'il s'agit plus d'une histoire de charset, d'encoding et de slash.

Que se passe-t-il si tu écris en dur
PHP:
$corp_mail = "<html><body><h1>Test Email</h1>nous somme le 9/12/2011</body></html>";
Et
PHP:
$datejour = "9.12.2011";
$corp_mail = "<html><body><h1>Test Email</h1>nous somme le $datejour</body></html>";

?

(En passant, la façon officielle française d'abréger une date est de mettre des points entre les nombres - des fois, ça arrange de le savoir :lol: )
 

Sylvain37

Grand Maître
Je suis moi-même désolé du problème que tu rencontres, Twin69, et de la confusion que cela sème chez mes amis modérateurs, mais les développeurs sont avertis du problème et trouveront une solution.

Hop, je modifie ton message à ta place. ;)

Edit : Je viens de m'apercevoir dans ta capture d'écran que tu ne t'étais pas authentifié sur le forum. C'est donc tout à fait normal que tu ne puisses pas modifier tes messages sans cette étape au préalable.
 

Twin69

Nouveau membre
Bonsoir,

Je vais fermé les yeux sur les premier pas sur presence-pc.com.
Je ne vous cache pas que hier j'étais sur le point de le désinscrire, en tout cas j'ai bien trouver le bouton pour le faire :ange:.

Pour ce qui est de mon problème

Code:
 $corp_mail = "<html><body><h1>Test Email</h1>nous somme le 9/12/2011</body></html>";

Et

Code:
 $datejour = "9.12.2011";
    $corp_mail = "<html><body><h1>Test Email</h1>nous somme le $datejour</body></html>";

fonctionne bien, je reçoie bien le mail correctement.

Voic ce que je veux faire maintenant:

Code:
 $corp_mail = "<html><body>".$_SESSION ['prenom'] .$_SESSION['nom'].' souhaite réserver le materiel ('.$_POST["Produit"].') pour la période du '.$_POST['reservation_debut']. 'au '.$_POST['reservation_fin'].
			' pour l\'utiliser à partir du '.$_POST['utilisation_debut']. ' jusqu\'au '.$_POST['utilisation_fin'].
			' pour '.$_POST['type'].' chez '.$_POST['nom_client']."</body></html>";

je vais réfléchir sur ce script et je reviens faire vous pour vous demandé de l'aide ou pour vous dire que j'ai réussi (mais ça va être dur)

Merci encore
Bonne soirée
 

Twin69

Nouveau membre
Meilleure réponse
Bonjour,

Juste pour vous dire que j'ai réussi a faire ce que je voulais merci de vote aide.

Bonne fin de journée.
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 079
Messages
6 716 705
Membres
1 586 247
Dernier membre
MrAzgarIII
Partager cette page
Haut