Création formulaire php

Résolu/Fermé
Signaler
Messages postés
48
Date d'inscription
lundi 21 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014
-
Messages postés
48
Date d'inscription
lundi 21 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014
-
Bonjour,
Je suis entrain de créer un site avec html et css (mise en forme)
j'ai crée mon formulaire en html puis mis en forme en css, et malgré les aides sur le net je n'arrive pas à faire mon .php. (nom du fichier = traitement.php)

Voici ma page html

<div id="formulaire">
<p><strong>Merci de remplir le formulaire ci joint</strong><br><br>
<div class="title">Formulaire de contact</div>

<form method="post" action="traitement.php">

<label for="name">Votre Nom:</label><input type="text" name="Nom" class="input" placeholder="votre nom"><br><br>
<label for="email">Votre Mail:</label><input type="email" name="email" class="input" placeholder="votre@adresse.com"><br><br>
<label for="Date">Date début:</label><input type="date" name="date" class="input" <br><br>
<label for="Date1">Date fin:</label><input type="date1" name="date1" class="input" <br><br>
<label for="Bateau">Choix du bateau:</label>
<select name="Bateau" size="1" class="menu" id="Bateau">
<option value="VIDE">Faites votre Choix</option>
<option value="CAPELLI 626 FLANDERS">CAPELLI 626 FLANDERS</option>
<option value="CHAPARRAL SIGNATURE 240">CHAPARRAL SIGNATURE 240</option>
<option value="CHAPARRAL 236 ZULU">CHAPARRAL 236 ZULU</option>
<option value="CHAPARRAL 226 FOXTROT">CHAPARRAL 226 FOXTROT</option>
<option value="CHAPARRAL 215 LOLO">CHAPARRAL 215 LOLO</option>
<option value="CHAPARRAL 206 XRAY">CHAPARRAL 206 XRAY</option>
<option value="CHAPARRAL 186 BRAVO">CHAPARRAL 186 BRAVO</option>
<option value="BOMBARD DB 500 GIFTOUN">BOMBARD DB 500 GIFTOUN</option>
<option value="TEMPEST 400 POMA">TEMPEST 400 POMA</option>
</select><br><br>

<label for="msg">Votre Message:</label><textarea name="msg" class="msg" rows="15" cols="60"placeholder="votre message..."></textarea><br><br>
<input type="submit" class="submit" name="submit" value="envoyer">
</form>
</div>


Merci par avance

12 réponses

Messages postés
8319
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
8 février 2021
1 598
Je ne comprends pas trop le problème.

Le formulaire pointe vers un fichier traitement.php, il faut que ce fichier existe et contienne le code php qui va traiter les données du formulaire.

A quel moment y-a-t-il un soucis ?
Messages postés
48
Date d'inscription
lundi 21 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014

Re bonjour
Je suis navrée mais je suis débutante et je ne sais pas quoi mettre dans le fichier php.
Merci du retour
Messages postés
784
Date d'inscription
mardi 9 décembre 2003
Statut
Membre
Dernière intervention
19 février 2018
190
la première question à se poser et : que veux tu faire des réponses de ton formulaire ? les sauvegarder dans une base de données ? envoyer un mail avec les réponses ? ...
Messages postés
48
Date d'inscription
lundi 21 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014

Re
Envoyer un mail.
Merci de me donner un coup de main
Messages postés
784
Date d'inscription
mardi 9 décembre 2003
Statut
Membre
Dernière intervention
19 février 2018
190
Pour commencer, ton fichier php doit récupérer les variables de ton formulaire
voici un petit tuto :

http://www.phpdebutant.org/article56.php

Ensuite pour envoyer un mail :
https://www.phpfacile.com/apprendre_le_php/envoyer_un_mail_en_php


Comme tu l'auras compris, il faut se mettre un peu au php ;)
Messages postés
48
Date d'inscription
lundi 21 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014

Re,
Je suis dèjà aller voir sur ces sites mais je n'y arrive pas voici mon fichier php

<?php
$destinataire="informations@empuriabrava.fr";
echo "Reservations";
mail ($destinataire, "informations reservations" "merci votre demande à été transmises");
$Nom = $_POST ['nom']
$Email = $_POST ['email']
$Date début = $_POST ['date']
$Date fin = $_POST ['date1']
print("<center> Bonjour $prenom $nom $date $date1 </center>");
?>

Quand je valide
Bonjour $prenom $nom $date $date1 "); ?>

help me
Messages postés
784
Date d'inscription
mardi 9 décembre 2003
Statut
Membre
Dernière intervention
19 février 2018
190
le mieux est d'essayer de comprendre un peu le code, il faut que tes variables correspondent.

voila en gros se que ça donne :

$nom = $_POST ['nom'];
$mail = $_POST ['email']; 
$date = $_POST ['date'] ;
$date1 = $_POST ['date1'] ;
$destinataire=$_POST['email']; 
echo "Reservations"; 
mail ($destinataire, "objet du mail", "contenu du mail"); 
print("<center> Bonjour $nom $date $date1 </center>"); 


le print est optionnel vu qu'il affiche le texte sur la page. L'action d'envoyer le mail se fait par la ligne mail.
Messages postés
48
Date d'inscription
lundi 21 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014

Je suis d'accord sur le principe de comprendre les codes, cela fait 3 jours que j'essaye, je suis également entrain d'apprendre css et htlm.
Je crois avoir compris le CSS et HTLM mais là je n'y arrive vraiment pas.
J'ai repris le code que tu m'as envoyé et là rien....
Messages postés
784
Date d'inscription
mardi 9 décembre 2003
Statut
Membre
Dernière intervention
19 février 2018
190
voici un code très basique qui fonctionne. Il faut que tu crées une nouvelle page avec l'extension php. Cette page se suffit à elle même, elle contient le formulaire et le code php qui affiche les variables.

les // devant la fonction mail veut dire que la ligne est commenté et ne sera donc pas exécuté.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Document sans titre</title>
</head>

<body>
<?php if(empty($_POST['nom'])) { ?>
<form name="form1" method="post" action="">
  <p>
    <input name="nom" type="text" id="nom" value="nom">
</p>
  <p>
    <input name="email" type="text" id="email" value="mail">
</p>
  <p>
    <input name="date" type="text" id="date" value="date debut">
</p>
  <p>
    <input name="date1" type="text" id="date1" value="date fin">
    <input type="submit" name="Submit" value="Envoyer">
  </p>
</form>
<?php 
} else {
$nom = $_POST ['nom']; 
$date = $_POST ['date'] ;
$date1 = $_POST ['date1'] ;
$destinataire=$_POST['email']; 
echo "Reservations"; 
//mail ($destinataire, "objet du mail", "contenu du mail"); 
print("<center> Bonjour <br> $nom <br> $date <br> $date1 <br> $destinataire</center>"); 
}
?> 
</body>
</html>


Tu remarqueras que le formulaire contient des inputs avec un nom trés précis !
ce nom correspond à celui qu'il faudra mettre dans le code php pour récupérer se que l'utilisateur aura tapé dans l'input.

par exemple pour le nom, le code du formulaire est :
<input name="nom">


le code php pour récupérer cette variable est :
$nom = $_POST ['nom'];


la commande POST récupère la valeur du formulaire 'nom' et la stock dans la variable $nom
Messages postés
784
Date d'inscription
mardi 9 décembre 2003
Statut
Membre
Dernière intervention
19 février 2018
190
eee question con, tu fais comment pour tester ta page ?

as tu installé un serveur PHP ? ou tu fais peut être tes tests directement sur un serveur web externe ?
Messages postés
48
Date d'inscription
lundi 21 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014

Oui je fais des tests sur serveur web externe; et je ne trouve toujours pas la solution.
Question bête mais ou je mets l'adresse mail du destinataire.
J'arrive bien sur la page de confirmation mais je ne reçois rien.

Voici les données de mon formulaire que j'ai réécris avec moins de champs pensant qu'il avait une erreur

<div id="formulaire">
<form action="traitement.php" method="post">


<p>Réservations.</p>
<p>Veuillez taper votre nom : <input type="text" name="nom"></p>

Faites le choix du bateau <select name="choix">
<option value="VIDE">Faites votre Choix</option>
<option value="CAPELLI 626 FLANDERS">CAPELLI 626 FLANDERS</option>
<option value="CHAPARRAL SIGNATURE 240">CHAPARRAL SIGNATURE 240</option>
<option value="CHAPARRAL 236 ZULU">CHAPARRAL 236 ZULU</option>
<option value="CHAPARRAL 226 FOXTROT">CHAPARRAL 226 FOXTROT</option>
<option value="CHAPARRAL 215 LOLO">CHAPARRAL 215 LOLO</option>
<option value="CHAPARRAL 206 XRAY">CHAPARRAL 206 XRAY</option>
<option value="CHAPARRAL 186 BRAVO">CHAPARRAL 186 BRAVO</option>
<option value="BOMBARD DB 500 GIFTOUN">BOMBARD DB 500 GIFTOUN</option>
<option value="CAPELLI 400">TEMPEST 400 </option>
<option value="CAPELLI 626">CAPELLI 626</option>
</select>

<br><textarea name="message" rows="8" cols="60">
Votre message ici.</textarea>


<input type="submit" value="Valider" />

</p>
</form>
</div>

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

Mon fichier php
<p>Bonjour !</p>

<p>Merci, votre demande à été Transmise. <?php echo $_POST['nom'] $_POST['message'] $_POST['choix']; ?> !</p>

<p>Nous traitons votre demande dans les meilleurs délais. <a href="index.htm">clique ici</a> pour revenir à la page d'acceuil</p>
Messages postés
48
Date d'inscription
lundi 21 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014

Je me permet de relance mon souci.
J'ai changer mon fichier .php et maintenant j'ai un message d'erreur sur la ligne 17 ($_POST ['nom']; mais je ne vois pas quoi
Merci de votre aide

<p>Bonjour !</p>

<p>Merci, votre demande à été Transmise.</p>
<?php
$destinataire = "informations@empuriabrava.fr";
$TO = $adresse;

$head = "From: ".$adresse."\n";
$head .= "X-Sender: <".$adresse.">\n";
$head .= "X-Mailer: PHP\n";
$head .= "Return-Path: <".$adresse.">\n";
$head .= "Content-Type: text/plain; charset=iso-8859-1\n";

$sujet = "Formulaire de contact";

$informations = "
$_POST['nom'];
$_POST['email'];
$_POST['choix'];
$_POST['duree'];
$_POST['date'] $_POST['date1'];
$_POST['message']";

$res = mail($TO, $sujet ,$informations, $head);
?>

<p>Nous traitons votre demande dans les meilleurs délais. <a href="FR_home.htm">clique ici</a> pour revenir à la page d'acceuil</p>