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

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème envoi données d'un formulaire vers email

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

par @rthur » 18 août 2016, 13:46

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

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

par coralie2509 » 18 août 2016, 11:41

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