Envoi Mail php - affichage dans le corps
houba_houbi
-
vaeylon -
vaeylon -
Bonjour,
Je sens que je vais poser une question très bête..... et je ne sais pas si je vais être claire......
Lorsque l'on envoit un formulaire par email en php, de type :
<?php
if(isset($_POST['envoyer']))
{
$to = "xxx";
$subject = "xxx";
$nom = $_POST['nom'];
$email = $_POST['email'];
$message = $_POST['message'];
$body = "From: $nom\n E-Mail: $email\n Message: $message\n";
echo "<h3 class='centre'>Le message a été envoyé ! Merci</h3>";
mail($to, $subject, $body);
}
?>
Les informations reçues dans Outlook sont affichées dans le corps du message. Ce qui fait :
----entete------
De : xxx
A : xxxx
Objet : xxxx
------corps---------
From : xxxxx
email : xxxx
message : xxxxxx
Je m'attendais plutôt à ce que "from" et "email" soit placé dans "De" en entete, puis "message" dans le corps ?
Est-ce normal ?
Merci d'avance
Je sens que je vais poser une question très bête..... et je ne sais pas si je vais être claire......
Lorsque l'on envoit un formulaire par email en php, de type :
<?php
if(isset($_POST['envoyer']))
{
$to = "xxx";
$subject = "xxx";
$nom = $_POST['nom'];
$email = $_POST['email'];
$message = $_POST['message'];
$body = "From: $nom\n E-Mail: $email\n Message: $message\n";
echo "<h3 class='centre'>Le message a été envoyé ! Merci</h3>";
mail($to, $subject, $body);
}
?>
Les informations reçues dans Outlook sont affichées dans le corps du message. Ce qui fait :
----entete------
De : xxx
A : xxxx
Objet : xxxx
------corps---------
From : xxxxx
email : xxxx
message : xxxxxx
Je m'attendais plutôt à ce que "from" et "email" soit placé dans "De" en entete, puis "message" dans le corps ?
Est-ce normal ?
Merci d'avance
A voir également:
- Envoi Mail php - affichage dans le corps
- Programmer envoi mail gmail - Guide
- Envoi mail cci - Guide
- Windows live mail - Télécharger - Mail
- Publipostage mail - Accueil - Word
- Affichage double ecran - Guide
2 réponses
Je peux t'apporter une aide et non pas une modification.
Essai avec phpmaileur qui est très simple à mettre en place et facile à utiliser.
Essai avec phpmaileur qui est très simple à mettre en place et facile à utiliser.
La fonction mail existe bel et bien et fonctionne sur la plupart des serveurs (a priori il n'y a aucun problème avec le tien). Pour ce qui est de ton problème c'est en effet tout a fait normal, c'est même toi qui lui dit de procéder de la sorte.
Reprenons ton bout de code :
Sur ce passage :
tu peux éventuellement enregistrer le from de la manière suivant en rajoutant des en-têtes à la fin de ta fonction mail (il s'agit du 4e paramètre de la fonction (et qui est facultatif).
J'espère t'avoir aidé ^^
Reprenons ton bout de code :
<?php if(isset($_POST['envoyer'])) { $to = "xxx"; $subject = "xxx"; $nom = $_POST['nom']; $email = $_POST['email']; $message = $_POST['message']; $body = "From: $nom\n E-Mail: $email\n Message: $message\n"; echo "<h3 class='centre'>Le message a été envoyé ! Merci</h3>"; mail($to, $subject, $body); } ?>
Sur ce passage :
$body = "From: $nom\n E-Mail: $email\n Message: $message\n";Tu mets from et email dans le corps même de ton mail. Tout d'abord, il faut savoir que ta variable $email (contenant je suppose le mail de la personne qui t'envoi le mail via le formulaire) ne peut pas apparaitre en tant qu'émetteur de l'email (puisque l'émetteur c'est toi (enfin le site)). Je te conseille donc vivement de le laisser là où il est (ou du moins de le formater de manière a ce que le destinataire comprenne que l'email vienne de cette personne (du genre : "$nom ($email) t'as envoyé cet email : ". (je réutilise ta variable qui enregistre le nom du destinataire).
tu peux éventuellement enregistrer le from de la manière suivant en rajoutant des en-têtes à la fin de ta fonction mail (il s'agit du 4e paramètre de la fonction (et qui est facultatif).
$body=$message ; $header="From: ". $email . "\r\n"; mail ($to,$subject,$body,$header);
J'espère t'avoir aidé ^^
Merci pour ta réponse.
J'ai trouvé ce site : https://stephaneey.developpez.com/tutoriel/php/phpmailer/
Mais je ne comprends pas ce qu'apporte PHP Mailer ?
Je pensais que la fonction mail existait sur tout serveur en php ?
Je ne comprends pas pourquoi installer ?
De plus, c'est uniquement pour un formulaire de contact sur un site.
Je ne comprends ce que l'on veut dire par méthode SMTP ou mail ?
Merci d'avance,