Aller au contenu

Formulaire avec plusieurs zones


guymauve

Messages recommandés

Posté(e)

Bonjour,

J'ai essayé de rècupérer un code de formulaire et d'ajouter des zones (champs) mais cela ne fonctionne pas.

Les zones ajoutées ne sont pas validées dans le mail envoyé.

Voici la page ici

Voici le code.

Désolé de vous ennuyer avec ça mais les inscriptions devraient déjà être activées :whistling:

Merci d'avance à celui ou ceux qui voudront m'aider.

<?php
// Dans la ligne qui suit, remplacer webmaster_AT_domaine.tld par l'adresse email du webmaster, à laquelle les messages devront être envoyés
$email_webmaster = "webmaster_AT_amcsambreville.be";
// === traitement des données du formulaire ============================================================
if (isset($_POST["envoyer"])){
// le formulaire a été soumis
       $etat = "erreur";
// Valeur par défaut. Prendra la valeur "ok" s'il n'y a pas d'erreur
// --- mise en forme des champs saisis dans le formulaire lors de sa soumission ---
       if (isset($_POST["email_expediteur"])) {
                $_POST["email_expediteur"]=trim(stripslashes($_POST["email_expediteur"]));
       }
       if (isset($_POST["titre"])) {
                $_POST["titre"]=trim(stripslashes($_POST["titre"]));
       }
       if (isset($_POST["message"])) {
                $_POST["message"]=trim(stripslashes($_POST["message"]));
       }
       // --- test de la validité des champs saisis ---
       if (empty($_POST["email_expediteur"])) {
// il manque l'email de l'expéditeur
                $erreur="Saisissez votre adresse email...";
       }
       elseif (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",$_POST["email_expediteur"])){
// l'adresse e-mail n'est pas valide
                $erreur="Votre adresse e-mail n'est pas valide...";
       }
       elseif (empty($_POST["message"])) {
// le message est vide
                $erreur="Saisissez un message...";
       }
       else {
// --- tous les champs sont correctement remplis: on pourra envoyer le mail ---
                $etat="ok";
       }
}
else {
// --- le formulaire n'a pas été soumis ---
          $etat="attente";
}
// === fin de traitement des données du formulaire =======================================================
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="fr" lang="fr" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Formulaire de contact</title>
</head>
<body>
<h1>Inscriptions Vitrival 2005 </h1>
<?php
if ($etat!="ok"){// le formulaire n'a pas été soumis, ou soumis avec une erreur
        if ($etat=="erreur"){
//le formulaire a été soumis avec une erreur
                        echo "<p><strong>".$erreur."</strong></p>\n";
// afficher le message d'erreur
        }
?>
       <form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>">
       <p><label for="email_expediteur">Votre adresse e-mail (obligatoire):</label><br />
       <input type="text" size="40" name="email_expediteur" id="email_expediteur" value="<?php
       if (!empty($_POST["email_expediteur"])) {
// l'adresse email de l'expéditeur a été saisie: la réafficher
               echo htmlspecialchars($_POST["email_expediteur"],ENT_QUOTES);
       }
       ?>" />
       </p>
       <p><label for="titre"></label>
       </p>
       <table width="700" border="0" cellpadding="1">
         <tr>
           <td><div align="center">Pilote 1 </div></td>
           <td><p align="center">Pilote 2</p>            </td>
         </tr>
         <tr>
           <td>Nom: 
           <input type="text" name="textfield" /></td>
           <td>Nom: 
           <input type="text" name="textfield2" /></td>
         </tr>
         <tr>
           <td>Prénom: 
           <input type="text" name="textfield3" /></td>
           <td>Prénom: 
           <input type="text" name="textfield4" /></td>
         </tr>
         <tr>
           <td>Rue: 
             <input type="text" name="textfield5" /></td>
           <td>Rue: 
             <input type="text" name="textfield52" /></td>
         </tr>
         <tr>
           <td>N°: 
           <input type="text" name="textfield53" /></td>
           <td>N° 
           <input type="text" name="textfield54" /></td>
         </tr>
         <tr>
           <td>Code Postal: 
           <input type="text" name="textfield55" /></td>
           <td>Code Postal: 
           <input type="text" name="textfield56" /></td>
         </tr>
         <tr>
           <td>Localité: 
           <input type="text" name="textfield57" /></td>
           <td>Localité: 
           <input type="text" name="textfield58" /></td>
         </tr>
         <tr>
           <td>Date de naiss. : 
             <input type="text" name="textfield59" /></td>
           <td>Date de naiss.: 
             <input type="text" name="textfield510" /></td>
         </tr>
         <tr>
           <td>Tél. ou GSM: 
           <input type="text" name="textfield511" /></td>
           <td>Tél ou GSM: 
           <input type="text" name="textfield512" /></td>
         </tr>
         <tr>
           <td>Email : 
           <input type="text" name="textfield5112" /></td>
           <td> Email : 
           <input type="text" name="textfield5113" /></td>
         </tr>
         <tr>
           <td>Modèle Moto ou Quad : 
           <input type="text" name="textfield5114" /></td>
           <td>Modèle Moto ou Quad : 
           <input type="text" name="textfield5115" /></td>
         </tr>
         <tr>
           <td>Cylindrée : 
           <input type="text" name="textfield5116" /></td>
           <td>Cylindrée: 
           <input type="text" name="textfield5117" /></td>
         </tr>
         <tr>
           <td> </td>
           <td> </td>
         </tr>
         <tr>
           <td>Catégorie : 
             <select name="select">
               <option>50 cc</option>
               <option>65/85 cc</option>
               <option>Amateurs</option>
               <option>Confirmés</option>
               <option>Quad</option>
             </select></td>
           <td>Catégorie: 
             <select name="select2">
               <option>50 cc</option>
               <option>65/85 cc</option>
               <option>Amateurs</option>
               <option>Confirmés</option>
               <option>Quad</option>
             </select></td>
         </tr>
         <tr>
           <td> </td>
           <td> </td>
         </tr>
       </table>
       <p>  
         <label for="message"></label>
       </p>
       <p><input type="submit" name="envoyer" value="Envoyer" />
       </p>
       </form>
<?php
}
else {
// le formulaire a été soumis sans erreur, on envoie le mail
       $entete = "From: ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n";
       $entete .= "MIME-Version: 1.0";
       if (@mail($email_webmaster,$_POST["titre"],$_POST["message"],$entete)){
// mail envoyé
               echo "Votre message a été envoyé.<br />\n";
               echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Envoyer un autre message...</a>\n";
       }
       else {
// erreur lors de l'envoi du mail
               echo "Un problème s'est produit lors de l'envoi du message.\n";
               echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Réessayez...</a>\n";
       }
}
?>
</body>
</html>

Posté(e)

Je vois pas trop ce que tu veux faire, ni ce qui se passe avec le mail :transpi:

Tu veux recevoir un mail avec le contenu de tous les champs, et dans le mail tu n'as aucune info c'est ça?

Posté(e)

Bonjour,

C'est toi qui a fait ce code ou pas ?

Il y a des choses complètement incohérentes, à commencer par le nom des champs, l'envoi de mail (un test avant l'affichage du formulaire souffit, qu'est-ce qu'il fait à la fin ?), etc ...

if (isset($_POST["titre"])) {
               $_POST["titre"]=trim(stripslashes($_POST["titre"]));
      }

Tu mets le résultat d'une manipulation dans ... $_POST["titre"] ... ;)

Posté(e)

non ce n'est pas moi.

C'était à la base un formulaire de contact pour lequel j'ai ajouté des champs.

Et ds le mail, les champs ne sont pas ajouté ...

Grand merci à vous.

Posté(e)

je rajoute que si qqn peut me coder ou corriger ce que j'ai fais, je lui en serais très reconnaissant.

Le formulaire devrait être prêt depuis le 15/08 :francais::transpi:

Merci à vous.

Posté(e)

Et ds le mail, les champs ne sont pas ajouté ...

Tu as quoi d'écrit dans le mail?

Juste l'entête ou tu as aussi un message?

Sinon désolé si je me plonge pas trop dedant mais j'ai mon stage qui finit la semaine prochaine et moi aussi j'ai encore quelques p'tits truc à faire avant que tout soit bien finit :ouioui:

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...