Page 1 sur 1

Problème envoi données d'un formulaire vers email

Posté : 18 août 2016, 11:41
par coralie2509
Bonjour,

Je suis novice et je suis entrain de créer un site internet. Je voulais le laisser en html, et j'aimerais juste utiliser du php pour envoyer les données d'un formulaire. Le formulaire en html est déjà intégré au template. Malheureusement il y a un problème : lorsque j'envoie les données, je ne reçois pas les champs remplis.

Voici le mail que je reçois :
Objet : Un message sur mon site
Message : Nom :
Email :
Message :

J'ai fait de nombreuses recherches et tests avant de me tourner vers vous, je vous remercie d'avance ...



Voici le html (index.html) :

<form action = "envoi.php" method="post" name= "Submit"> <div class="col-md-6 to-animate-2">
<h3> Formulaire de contact</h3>
<div class="form-group ">
<label for="name" class="sr-only">Nom</label>
<input id="name" class="form-control" placeholder="Name" type="text">
</div>
<div class="form-group ">
<label for="email" class="sr-only">Email</label>
<input id="email" class="form-control" placeholder="Email" type="email">
</div>
<div class="form-group">
<label for="occation" class="sr-only">Occasion</label>
<select class="form-control" id="occation">
<option>Sélectionnez</option>
<option>Repas quotidien</option>
<option>Buffet</option>
<option>Autres</option>
</select>
</div>
<div class="form-group ">
<label for="date" class="sr-only">Date</label>
<input id="date" class="form-control" placeholder="Date & Time" type="text">
</div>



<div class="form-group ">
<label for="message" class="sr-only">Message</label>
<textarea name="" id="message" cols="30" rows="5" class="form-control" placeholder="Message"></textarea>
</div>
<div class="form-group ">
<input class="btn btn-primary" value="Envoyer" name="envoi" type="submit">
</div>


Voici le php (envoi.php) :

<?php

$EmailFrom = $_POST['email'];
$EmailTo = "[email protected]";
$Subject = "Un message sur mon site";
$Nom = $_POST['name'];
$Email = $_POST['email'];
$Occasion = $_POST['occation'];
$Message = $_POST['message'];

// validation
$validationOK=true;
if (!$validationOK) {
echo "Error";
exit;
}

// mise en form mail
$Body = "";
$Body .= "Nom: ";
$Body .= $Nom;
$Body .= "\n";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "Message: ";
$Body .= "\n";
$Body .= $Message;
$Body .= "\n";

// envoi email
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");

// message success-error
if ($success){
echo "Votre message à bien été envoyé.";
}
else{
echo "Une erreur s'est produite à l'envoi de votre message.";
}
?>


Merci encore, je ne comprends pas ce qui cloche..

Coralie

Re: Problème envoi données d'un formulaire vers email

Posté : 18 août 2016, 13:46
par @rthur
Bonjour,

En HTML, il faut que tes champs input ait un nom avec le paramètre name="...", en effet c'est le name et pas l'id qui est envoyé en formulaire