A voir également:
- Exécuter un code html dans un email
- Comment creer un compte email - Guide
- Code asci - Guide
- Comment débloquer un code puk - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Comment créer un qr code - Guide
5 réponses
pitxu
Messages postés
689
Date d'inscription
vendredi 7 septembre 2007
Statut
Membre
Dernière intervention
25 mars 2015
94
24 janv. 2011 à 18:33
24 janv. 2011 à 18:33
Bonjour,
tu ne peux pas exécuter du code php ainsi, le php doit être exécuté sur ton serveur et transformé en html avant d'être inclus dans le corps de ton mail.
Si ton coe apparait tel quel' c'est qu'il te manque le $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
<?php
$headers ='From: "nom"<adresse@fai.fr>'."\n";
$headers .='Reply-To: adresse_de_reponse@fai.fr'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
$message ='<html><head><title>Un titre ici</title></head><body>'.$_POST['monchamp'].'</body></html>';
if(mail('adresse_du_destinataire@fai.fr', 'Sujet', $message, $headers))
{
echo 'Le message a été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}
?>
tu ne peux pas exécuter du code php ainsi, le php doit être exécuté sur ton serveur et transformé en html avant d'être inclus dans le corps de ton mail.
Si ton coe apparait tel quel' c'est qu'il te manque le $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
<?php
$headers ='From: "nom"<adresse@fai.fr>'."\n";
$headers .='Reply-To: adresse_de_reponse@fai.fr'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
$message ='<html><head><title>Un titre ici</title></head><body>'.$_POST['monchamp'].'</body></html>';
if(mail('adresse_du_destinataire@fai.fr', 'Sujet', $message, $headers))
{
echo 'Le message a été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}
?>
Voici mon code :
<?php
$headers ='From: "E2G"<www.elec-e2g.fr>'."\n";
$headers .='Reply-To: yohann.gras@gmail.com'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
$message = '
<html><head><title>Un titre ici</title></head><body>
<strong><?php echo htmlspecialchars($_POST[\'Nom\']) . \' \' . htmlspecialchars($_POST[\'Prénom\']); ?></strong></br>
<?php echo \'Domicilié au \' . htmlspecialchars($_POST[\'Adresse\']) . \' \' . htmlspecialchars($_POST[\'Codepostal\']) . \' \' . htmlspecialchars($_POST[\'Ville\']);?></br></br>
<p>Fait appel à E2G pour la requête suivante : </p>
<strong><?php echo htmlspecialchars($_POST[\'Motif\']) . \': \' . htmlspecialchars($_POST[\'Siautre\']);?></strong></br>
<p> Joignable au <?php echo htmlspecialchars($_POST[\'Téléphone\']);?> </p></br>
<p> Envoyé le :</p> <?php $jour = date(\'d\');
$mois = date(\'m\');
$annee = date(\'Y\');
$heure = date(\'H\')1;
$minute = date(\'i\');
echo $jour . \'/\' . $mois . \'/\' . $annee . \' à \' . $heure. \' h \' . $minute;
?>
</body></html> ;?>
<?php
if(mail('yohann.gras@gmail.com', 'Sujet', $message, $headers))
{
echo 'Le message a été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}
?>
Si grâce à ça tu peux m'aider ça sera super. Encore merci !
<?php
$headers ='From: "E2G"<www.elec-e2g.fr>'."\n";
$headers .='Reply-To: yohann.gras@gmail.com'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
$message = '
<html><head><title>Un titre ici</title></head><body>
<strong><?php echo htmlspecialchars($_POST[\'Nom\']) . \' \' . htmlspecialchars($_POST[\'Prénom\']); ?></strong></br>
<?php echo \'Domicilié au \' . htmlspecialchars($_POST[\'Adresse\']) . \' \' . htmlspecialchars($_POST[\'Codepostal\']) . \' \' . htmlspecialchars($_POST[\'Ville\']);?></br></br>
<p>Fait appel à E2G pour la requête suivante : </p>
<strong><?php echo htmlspecialchars($_POST[\'Motif\']) . \': \' . htmlspecialchars($_POST[\'Siautre\']);?></strong></br>
<p> Joignable au <?php echo htmlspecialchars($_POST[\'Téléphone\']);?> </p></br>
<p> Envoyé le :</p> <?php $jour = date(\'d\');
$mois = date(\'m\');
$annee = date(\'Y\');
$heure = date(\'H\')1;
$minute = date(\'i\');
echo $jour . \'/\' . $mois . \'/\' . $annee . \' à \' . $heure. \' h \' . $minute;
?>
</body></html> ;?>
<?php
if(mail('yohann.gras@gmail.com', 'Sujet', $message, $headers))
{
echo 'Le message a été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}
?>
Si grâce à ça tu peux m'aider ça sera super. Encore merci !
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
24 janv. 2011 à 21:50
24 janv. 2011 à 21:50
Voici ce qu'il faut modifier:
$message = '
<html><head><title>Un titre ici</title></head><body>
<strong><?php echo htmlspecialchars($_POST[\'Nom\']) . \' \' . htmlspecialchars($_POST[\'Prénom\']); ?></strong></br>
A corriger en:
J'ai enlevé tout les \
Continu ainsi pour tout le contenu de la variable $message.
$message = '
<html><head><title>Un titre ici</title></head><body>
<strong><?php echo htmlspecialchars($_POST[\'Nom\']) . \' \' . htmlspecialchars($_POST[\'Prénom\']); ?></strong></br>
A corriger en:
$message = ' <html><head><title>Un titre ici</title></head><body> <strong>'.htmlspecialchars($_POST['Nom']) .' ' . htmlspecialchars($_POST['Prénom']).'</strong></br>
J'ai enlevé tout les \
Continu ainsi pour tout le contenu de la variable $message.
Merci pitxu, et merci beaucoup pour la rapidité de ta réponse.
Je vais essayer avec le code que tu me proposes et je te tiens au courant pour te dire si ça a résolu mon problème.
Encore merci !!
Edit :
Finalement ça n'a pas résolu mon problème ...
Le soucis maintenant (enfin c'est ce que je pense), serait que dans le <body> ... </body> de mon $message, j'ai besoin de mettre bien plus qu'un champ ... =S
Avec ta solution, j'ai bien reçu le message mis en forme mais les champs étaient vides ...
Je vous joins ce que j'aimerais mettre dans mon message ...
Soit j'ai fait des parse error un peu partout pour que ça bug, soit mon code est trop complexe pour être envoyé de cette manière ...
Dans ce cas, je suis preneur de n'importe quelle solution alternative ... si solution il y a ...
Merci à vous.
Ce que je voudrais envoyer :
(PS: c'est un formulaire pour se faire recontacter par une entreprise ...)
(PPS: dans la version $message, j'ai bien sur ajouté des \ devant chaque ' ...)
<strong><?php echo htmlspecialchars($_POST['Nom']) . ' ' . htmlspecialchars($_POST['Prénom']) ?></strong></br>
<?php echo 'Domicilié au ' . htmlspecialchars($_POST['Adresse']) . ' ' . htmlspecialchars($_POST['Codepostal']) . ' ' . htmlspecialchars($_POST['Ville']) ?></br></br>
<p>Fait appel à E2G pour la requête suivante : </p>
<strong><?php echo htmlspecialchars($_POST['Motif']) . ': ' . htmlspecialchars($_POST['Siautre'])?></strong></br>
<p> Joignable au <?php echo htmlspecialchars($_POST['Téléphone'])?> </p></br>
<p> Envoyé le :</p> <?php $jour = date('d');
$mois = date('m');
$annee = date('Y');
$heure = date('H') + 1 ;
$minute = date('i');
echo $jour . '/' . $mois . '/' . $annee . ' à ' . $heure. ' h ' . $minute;
?>
Je vais essayer avec le code que tu me proposes et je te tiens au courant pour te dire si ça a résolu mon problème.
Encore merci !!
Edit :
Finalement ça n'a pas résolu mon problème ...
Le soucis maintenant (enfin c'est ce que je pense), serait que dans le <body> ... </body> de mon $message, j'ai besoin de mettre bien plus qu'un champ ... =S
Avec ta solution, j'ai bien reçu le message mis en forme mais les champs étaient vides ...
Je vous joins ce que j'aimerais mettre dans mon message ...
Soit j'ai fait des parse error un peu partout pour que ça bug, soit mon code est trop complexe pour être envoyé de cette manière ...
Dans ce cas, je suis preneur de n'importe quelle solution alternative ... si solution il y a ...
Merci à vous.
Ce que je voudrais envoyer :
(PS: c'est un formulaire pour se faire recontacter par une entreprise ...)
(PPS: dans la version $message, j'ai bien sur ajouté des \ devant chaque ' ...)
<strong><?php echo htmlspecialchars($_POST['Nom']) . ' ' . htmlspecialchars($_POST['Prénom']) ?></strong></br>
<?php echo 'Domicilié au ' . htmlspecialchars($_POST['Adresse']) . ' ' . htmlspecialchars($_POST['Codepostal']) . ' ' . htmlspecialchars($_POST['Ville']) ?></br></br>
<p>Fait appel à E2G pour la requête suivante : </p>
<strong><?php echo htmlspecialchars($_POST['Motif']) . ': ' . htmlspecialchars($_POST['Siautre'])?></strong></br>
<p> Joignable au <?php echo htmlspecialchars($_POST['Téléphone'])?> </p></br>
<p> Envoyé le :</p> <?php $jour = date('d');
$mois = date('m');
$annee = date('Y');
$heure = date('H') + 1 ;
$minute = date('i');
echo $jour . '/' . $mois . '/' . $annee . ' à ' . $heure. ' h ' . $minute;
?>
pitxu
Messages postés
689
Date d'inscription
vendredi 7 septembre 2007
Statut
Membre
Dernière intervention
25 mars 2015
94
24 janv. 2011 à 20:34
24 janv. 2011 à 20:34
Post le code de ta fonction mail stp
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
24 janv. 2011 à 18:37