Pb formulaire php

Fermé
ZeroO Messages postés 11 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 1 mai 2008 - 25 avril 2008 à 00:29
ZeroO Messages postés 11 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 1 mai 2008 - 26 avril 2008 à 23:15
Bonjour,

j'ai réussi à créer un formulaire html
cependant je n'arrive pas à créer la page suivante en php à partir des informations données par la personne sondée ni à savoir comment recevoir par mail ces informations.

Si quelqu'un avait la solution ça serait gentil pasque ça fait 2 jours que e planche dessus et 'avoue que je désespère :s

Merci d'avance
A voir également:

4 réponses

Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 922
25 avril 2008 à 01:50
salut,

je te propose un tuto de developpez.com et un autre avec PHP 5 à utiliser si possible.
0
Thamior Messages postés 264 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 18 mars 2014 47
25 avril 2008 à 01:58
Bonjour,

Dans ton formulaire, tu as du définir une balise <form>. Cette balise doit contenir plusieurs informations sous forme d'attribut. Pour plus d'information :
https://www.commentcamarche.net/contents/493-formulaires-html-cours-et-exemples

Une fois que tu as défini les attributs, tu créés ta page php (elle doit être identique au nom présent dans l'attribut action et ne doit pas comporter d'espace).
Pour récupérer les données tu fais :
- si method post = $_POST["nom du champ html"]; // le nom du champ est l'attribut name
- si method get = $_GET["nom du champ html"];

Pour l'envoie d'un formulaire en PHP, utilise la fonction mail() de PHP.
Manuel : https://www.php.net/manual/en/function.mail.php
Quelques liens sur CCM :
- http://www.commentcamarche.net/forum/affich 5333090 lien dans un email en php
- http://www.commentcamarche.net/faq/sujet 117 php fonction mail

En espérant que tout ceci d'aidera.
0
ZeroO Messages postés 11 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 1 mai 2008
25 avril 2008 à 20:54
Merci Thamior !

Et saurais-tu à tout hasard comment faire en sorte que les champs du formulaires soient renvoyés directement sur ma boîte mail??

Via un bouton "valider" ou autre sur la page php?
0
Thamior Messages postés 264 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 18 mars 2014 47
26 avril 2008 à 01:20
Bonjour,

En faite, il te faut récupérer tous les champs de ton formulaire et le mettre dans le corps du courriel.

Exemple pour un formulaire de contact :

<?
// Formulaire de contact en PHP
if($envoyer == "Envoyer")
{
/////voici la version Mine
$headers = "MIME-Version: 1.0\r\n";

//////ici on détermine le mail en format text
// text/plain = message text plein ---- text/html = message en codage html
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

////ici on détermine l'expediteur et l'adresse de réponse
$headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP";

$subject="$sujet";
$destinataire=""; // ici ton adresse

$message = "Nom : $nom";
$message .= "<br />";

if(isset($mail))
$message .= "L'adresse mail du demandeur : $mail";
else
$message .= "L'adresse mail du demandeur : non communiqué";

$message .= "<br />Le message : <br />";
$message .= $msg;

$message .= "<p><br />---------------------------------<br />Formulaire...


if (mail($destinataire,$subject,$message,$headers))
$body = "Votre mail a été envoyé<br />";
else
$body = "Une erreur s'est produite<br />";

$body .= "<b><u>Récapitulatif :</u></b><br />";
$body .= "<b>Nom :</b> $nom<br />";

if(isset($mail))
$body .= "<b>L'adresse mail :</b> $mail";
else
$body .= "<b>L'adresse mail :</b> non communiqué";

$body .= "<br /><b>Sujet :</b> $sujet<br />";
$body .= "<b>Votre message :</b><br />";
// Inclus le perser BBCode
require_once "bbcode/bbcode.php";
// Récupère les tags dans le fichier XML
getBBTags('bbcode/bbcode.xml');
// Affiche le texte parsé
/*echo render($_POST["teststring"]);
echo "<hr align='center'>";*/
$body .= render($msg);
//$body .= $message;
}
else
{
//$body = "<center>Formulaire de contact</center>";
$body = "<p><form method='post' name='frm1'><table border='0' width='100%'>";
$body .= "<tr><td width='20%'>Nom :</td><td width='50%'><input type='text' name='nom' size='20' /></td></tr>";
$body .= "<tr><td>Courriel¹ :</td><td><input type='text' name='mail' size='20' /></td></tr>";
$body .= "<tr><td>Sujet :</td><td><input type='text' name='sujet' size='20' /></td></tr>";
$body .= "<tr><td valign='top'>Votre message :</td><td><textarea rows='5' cols='40' name='msg'></textarea></td></tr>";
$body .= "<tr><td colspan='2' align='center'><input type='submit' name='envoyer' value='Envoyer' /> <input type='reset' /></td></tr>";
$body .= "</table></form>";
$body .= "<p>¹Mettez une adresse valide si vous désirez une réponse, ce champ est facultatif.<br />";
$body .= "NB : ce formulaire n'a aucune connexion avec la base de données.</p>";
}

<html>
<head>
<title>Formulaire de contact</title>
</head>

<body>
<?
echo $body;
?>
</body>
</html>
0
ZeroO Messages postés 11 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 1 mai 2008
26 avril 2008 à 23:15
Bonjour thamior,

j'ai (encore) un soucis avec mon site et mon formulaire

j'ai créé trois pages:
- une page index.html contenant un formulaire
- une page cible.php récapitulant les données entrées par la personne
- une page cible2.html remerciant la personne et la renvoyant sur le blog

j'aimerai que la page html :
--> amène le visiteur sur la page php
<form method=post action="cible.php"> donc ca c'est ok

ET que la page php après validation par le visiteur effectue 2 actions
--> m'envoie un mail dans ce style là
<form method=post ENCTYPE="text/plain" action="mailto:xxxxxx@numericable.fr">
--> ET envoie le visiteur sur la page html de remerciement
<form method=post action="cible2.htlm">

Mon problème : le mail envoyé par php ne restitue que les informations ajoutée sur cette page php
la seconde action de la page php n'est pas effectuée



En annexe les trois pages en question :

LA PAGE INDEX.HTLM:

<html>
<head>
<title>Montauban en VOST* Formulaire d'inscription</title>
</head>

<body>
<fieldset><p> </br>
</p>

<p ALIGN=CENTER><strong>FORMULAIRE D'INSCRIPTION</strong></p>

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

<fieldset>
<legend>Vos coordonnées</legend>
<p>Civilité* :<br /><input type="radio" name="civilité" value="Madame" id="Madame" /> <label for="Madame">Madame</label><br /><input type="radio" name="civilité" value="Mademoiselle" id="Mademoiselle" /> <label for="Mademoiselle">Mademoiselle</label><br /><input type="radio" name="civilité" value="Monsieur" id="Monsieur" /> <label for="Monsieur">Monsieur</label><br />
</p>
<P ALIGN=LEFT><label>Nom *</label> : <input type="text" name="nom" id="nom" />
</P>
<P ALIGN=LEFT><label>Prénom *</label> : <input type="text" name="prenom" id="prenom" />
</P>
<P ALIGN=LEFT><label>Adresse électronique *</label> : <input type="text" name="mail" id="Adresse électronique" />
</P>
<P ALIGN=LEFT><label>Numéro de téléphone * (fixe ou portable)</label> : <input type="text" name="tel" id="tel" />

<p>
</p>
</fieldset>
</br>
<fieldset>
<legend>Votre inscription</legend>
<p><label for="Nombre approximatif de participants">Nombre approximatif
de participants (de 2 à 10 personnes, vous inclus) * :</label>
<select name="choix" id="Nombre approximatif de participants">
<option value="2 personnes">2 personnes</option>
<option value="3 personnes">3 personnes</option>
<option value="4 personnes">4 personnes</option>
<option value="5 personnes">5 personnes</option>
<option value="6 personnes">6 personnes</option>
<option value="7 personnes">7 personnes</option>
<option value="8 personnes">8 personnes</option>
<option value="9 personnes">9 personnes</option>
<option value="10 personnes">10 personnes</option>
</select>
</p>
<P ALIGN=LEFT><label>Nom de l'équipe *</label> : <input type="text" name="equipe" id="Nom de l'équipe" />
</P>
</fieldset>
<p>
</p>


<fieldset>
<legend>Validation du Règlement</legend>
<P ALIGN=LEFT>Pour finir :
</P>
<P ALIGN=LEFT><input type="checkbox" name="securité" /> J’autorise les organisateurs à prendre toutes les dispositions d’urgence en cas d’accident. Je dégage les organisateurs de toute responsabilité pour tout incident ou accident intervenant lors de cette manifestation, de même en cas de perte ou vol d’objets de valeur. J’atteste être assuré(e) pour ma propre responsabilité civile.
</P>
<P ALIGN=LEFT><input type="checkbox" name="reglement" /> J'ai lu et j'accepte le règlement du jeu officiel
</P>


<P ALIGN=LEFT>* champs obligatoires, voir fin de page
</P>
</fieldset>
</br>
<p ALIGN=CENTER>
<input type="submit" value="S'inscrire" /> <input type="reset" value="Annuler" />
</p>

</form>
<p><u>Informatique et liberté :</u> Les informations nominatives recueillies dans le cadre du présent jeu sont traitées conformément à la Loi Informatique et Libertés du 6 janvier 1978. Tous les participants au concours, ainsi que leur représentant légal s'ils sont mineurs, disposent en application de l'article 27 de cette loi, d'un droit d'accès ou de rectification aux données les concernant. Toute demande d'accès, de rectification ou d'opposition doit être adressée à lcuvelliez@numericable.fr
Par ailleurs, les organisateurs garantissent la sécurité et la protection des données recueillies lors de ce jeu et notamment le fait qu’elles ne seront pas transmises à des tiers. </p>
</fieldset>

</body>
</html>


LA PAGE CIBLE.PHP :

<head>
<title>Montauban en VOST* Formulaire d'inscription</title>
</head>

<body>
<fieldset>
<p> </br>
</p>
<p ALIGN=CENTER><strong> VERIFICATION DES INFORMATIONS </strong> </p>
</br>

<form method=post action="cible2.html">
<form method=post ENCTYPE="text/plain" action="mailto:xxxxxx@numericable.fr">


<fieldset>
<legend>Vérification</legend>
<p> Merci d'avoir rempli le formulaire d'inscription !</br></p>
<p> Je vais vous demander de vérifier les informations données :</p>
<p> Vous êtes <?php echo $_POST['civilité']; ?> <?php echo $_POST['prenom']; ?> <?php echo $_POST['nom']; ?>
</br>
<p> Vous vous êtes inscrit(e) à la chasse au trésor tout public Montauban en VOST* avec un groupe composé approximativement de <?php echo $_POST['choix']; ?>. </p>
<p> Votre équipe porte le nom "<?php echo $_POST['equipe']; ?>"</p>
</br>
<p> Il est possible de vous joindre par mail à l'adresse : <?php echo $_POST[mail]; ?></p><p> Ou par téléphone au : <?php echo $_POST[tel]; ?></p></br>
<p> Nous vous rappelons qu'aucune information personnelle vous concernant ne sera transmise à des tiers, et vous serez dans la possibilité à tout moment de changer les données vous concernant.</p>

<P ALIGN=LEFT><input type="checkbox" name="infosj" /> Je certifie avoir donné des informations exactes
</P>
</fieldset></br>
<p ALIGN=CENTER>
<input type="submit" value="Valider" />
</p></br>


</fieldset>

</body>


LA PAGE CIBLE2.HTML :

<head>
<title>Montauban en VOST* Formulaire d'inscription</title>
</head>

<body>
<fieldset>
<p> </br>
</p>
<legend ALIGN=CENTER><strong> FIN DE L'INSCRIPTION </strong> </legend>
</br>
<p> Merci</p></br>
<p> Vous recevrez sous peu un mail de confirmation.</p></br>
<P> Cliquez ici pour revenir à la page précédente </P>

</fieldset>

</body>
0