Formulaire

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 : Formulaire

Re: Formulaire

par djtec » 27 déc. 2009, 00:58

Ok mais là le $_POST['nbre_champs_texte'] et $_POST['titre_champ'.$a] ne fonctionneront pas.

Le plus simple est de donner un nom à chaque champ au lieu de faire un tableau comme tu fais.

Le tableau s'applique plus à des checkbox ou des radio, pour des input de type text le mieux est de donner un nom par input.

Pour le login donne le nom login, etc pour les autres puis vérifie quel input est rempli et si tu dois l'afficher dans ton mail ou pas.

Sinon passe nous le modèle que tu as utilisé que l'on regarde tout ça.

Re: Formulaire

par cmoi » 26 déc. 2009, 23:24

j'ai repris comme modèle ce que j'utilise déjà dans d'autres formulaires qui fonctionnent parfaitement.

Re: Formulaire

par djtec » 26 déc. 2009, 19:17

Déjà là c'est bizarre:
	for($a = 1; $a <= $_POST['nbre_champs_texte']; $a++) {
		$partie_champs_texte .= "<font face='Verdana' size='2' color='#003366'>".$_POST['titre_champ'.$a]." = ".$_POST['champ'.$a]."</font><br>";
	}


D'où viens la variable $_POST['nbre_champs_texte'] et aussi celle-ci $_POST['titre_champ'.$a].

Aucune des deux existent dans le html.

De plus dans le for à $_POST['nbre_champs_texte'] il faudrait lui appliquer la fonction count() pour que la boucle puisse savoir combien il y a de variables.

De plus le <?=$PHP_SELF?> n'est peut-être pas accepter par ton hébergeur.

Re: Formulaire

par cmoi » 26 déc. 2009, 18:37

Bonjour cmoi,

Déjà tu vérifie l'envoi du formulaire comme ceci:
if($_POST['envoi']) {
       header("Location: http://www.sud-network.com/merci2.php");
}
Hors que si on regarde ton html ton bouton submit s'apel envoyer.

Donc corrige déjà cette erreur.
Exact !! :oops:
c'est modifié
<input type="submit" value="envoi" name="envoyer">
mais ça ne change rien !

Re: Formulaire

par djtec » 26 déc. 2009, 14:58

Bonjour cmoi,

Déjà tu vérifie l'envoi du formulaire comme ceci:
if($_POST['envoi']) {
       header("Location: http://www.sud-network.com/merci2.php");
}
Hors que si on regarde ton html ton bouton submit s'apel envoyer.

Donc corrige déjà cette erreur.

Re: Formulaire

par cmoi » 26 déc. 2009, 14:27

tel quel, cela ne fonctionne pas : je ne reçois rien par mail et la page qui devrait s'afficher ne s'affiche pas.

Re: Formulaire

par Aureusms » 25 déc. 2009, 23:57

Tu bloques sur quoi exactement ?

Formulaire

par cmoi » 25 déc. 2009, 20:13

Bonjour,

dans l'envoi d'un formulaire (dont les résultats sont à recevoir par mail), je bloque sur la liste déroulante. Pouvez-vous m'aider à trouver le problème ?
<?php
$email_dest = "[email protected]";
if ($_POST['envoi']) { 
header("Location: http://www.sud-network.com/merci2.php");
// E- mail headers: 
$headers ="MIME-Version: 1.0 \n";
$headers .="From: Sud Network<[email protected]>\n";
$headers .="Content-Type: text/html; charset=iso-8859-1 \n"; 
$subject = "Données à modifier";
$partie_entete = "<html><head> 
<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>
</head>
<body bgcolor=#FFFFFF>";
$partie_champs_texte = ""; 
for ($a=1; $a<= $_POST['nbre_champs_texte']; $a++) {
$partie_champs_texte .= "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_champ'.$a] . " = " . $_POST['champ'.$a] . "</font><br>
";
}
if ($_POST['nbre_zone_email'] != 0) { 
$partie_zone_email = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_email'] . " = " . $_POST['zone_email'] . "</font><br>
";
}
if ($_POST['nbre_zones_texte'] != 0) {
$partie_zone_texte = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_zone'] . " = " . $_POST['zone_texte'] . "</font><br>
";
$partie_zone_texte = stripslashes($partie_zone_texte);
}
if ($_POST['nbre_zones_select'] != 0) {
$partie_zone_select = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_zone'] . " = " . $_POST['zone_select'] . "</font><br>
";
$partie_zone_select = stripslashes($partie_zone_select);
}

$fin = "</body></html>"; 
$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_zone_texte . $partie_zone_select . $fin; 
// Send the e-mail 
if (@!mail($email_dest,$subject,$sortie,$headers)) {
echo("Envoi du formulaire impossible");
} // Closing if !mail... 
} // Closing if edit 
?>
              <form name="mail_form" method="post" action="<?=$PHP_SELF?>" onSubmit="return verifSelection()">
                <div align="left"> 
                  <table width="100%" border="0">
                    <tr> 
                      <td width="21%"> 
                        <div align="right">login </div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ1" size="25">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">mdp </div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ2" size="25">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">enseigne</div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ3" size="25">
                      </td>
                    </tr>
                    <tr>
                      <td width="21%">&nbsp;</td>
                      <td width="79%">&nbsp;</td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">nom </div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ4" size="25">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">pr&eacute;nom</div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ5" size="25">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">adresse</div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ6" size="25">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">...</div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ7" size="25">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">cp</div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ8" size="20">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">ville</div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ9" size="25">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">t&eacute;l.</div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ10" size="15">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">mob. </div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ11" size="15">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">fax </div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ12" size="15">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">e-mail</div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="zone_email" size="25">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">http:// </div>
                      </td>
                      <td width="79%"> 
                        <input type="text" name="champ13" size="25">
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">activit&eacute; </div>
                      </td>
                      <td width="79%"> 
                        <select name="zone_select" cols="10">
                          <option selected>Choisissez votre activité</option>
                          <option value="Accompagnement de PME">Accompagnement 
                          de PME</option>
                          <option value="Affaires internationales">Affaires internationales</option>
                          <option value="Agence de communication">Agence de communication</option>
                          <option value="Agence de presse">Agence de presse</option>
                          <option value="Agence de voyages">Agence de voyages</option>
                          <option value="Agro-alimentaire">Agro-alimentaire</option>
                          <option value="Archivage">Archivage </option>
                          <option value="Artistique">Artistique </option>
                          <option value="Assistance commerciale">Assistance commerciale</option>
                          <option value="Assurances">Assurances</option>
                          <option value="Automobile">Automobile</option>
                          <option value="Avocat">Avocat </option>
                          <option value="Boutique">Boutique </option>
                          <option value="BTP">BTP</option>
                          <option value="Bureau d'études techniques" v>Bureau 
                          d'études techniques</option>
                          <option value="Cadeaux">Cadeaux</option>
                          <option value="Cinéma">Cinéma</option>
                          <option value="Climatisation">Climatisation</option>
                          <option value="Coaching">Coaching</option>
                          <option value="Communication">Communication</option>
                          <option value="Conciergerie d'entreprise">Conciergerie 
                          d'entreprise</option>
                          <option value="Créations graphiques">Créations graphiques</option>
                          <option value="Cuisine">Cuisine</option>
                          <option value="Décoration">Décoration </option>
                          <option value="Design">Design</option>
                          <option value="Ecrivain public>Ecrivain public</option>
                      <option value="Editions">Editions</option>
                          <option value="Emballage">Emballage</option>
                          <option value="Emploi">Emploi</option>
                          <option value="Energies renouvelables">Energies Renouvelables</option>
                          <option value="Enseignement privé">Enseignement privé</option>
                          <option value="Environnement">Environnement</option>
                          <option value="Evénementiel">Evénementiel</option>
                          <option value="Expertise comptable">Expertise comptable</option>
                          <option value="Finance">Finance</option>
                          <option value="Fiscalité">Fiscalité </option>
                          <option value="Formation">Formation</option>
                          <option value="Galerie d'art">Galerie d'art</option>
                          <option value="Habillement">Habillement</option>
                          <option value="Hôtellerie-Restauration">Hôtellerie-Restauration</option>
                          <option value="Humanitaire">Humanitaire</option>
                          <option value="Hygiène">Hygiène</option>
                          <option value="Immobilier">Immobilier</option>
                          <option value="Import-Export">Import-Export</option>
                          <option value="Imprimerie">Imprimerie </option>
                          <option value="Informatique">Informatique</option>
                          <option value="Investigations">Investigations</option>
                          <option value="Isolation">Isolation</option>
                          <option value="Joaillerie de luxe">Joaillerie de luxe</option>
                          <option value="Location de bateaux">Location de bateaux</option>
                          <option value="Location de véhicules">Location de véhicules 
                          </option>
                          <option value="Loisirs">Loisirs</option>
                          <option value="Management">Management</option>
                          <option value="Marketing">Marketing</option>
                          <option value="Mobilier">Mobilier</option>
                          <option value="Mobilier urbain">Mobilier urbain</option>
                          <option value="Mode">Mode</option>
                          <option value="Nettoyage">Nettoyage </option>
                          <option value="Nouvelles énergies">Nouvelles énergies</option>
                          <option value="Papeterie">Papeterie</option>
                          <option value="Photographie">Photographie</option>
                          <option value="Piscines">Piscines</option>
                          <option value="Placements, patrimoine">Placements, patrimoine</option>
                          <option value="Prêts professionnels">Prêts professionnels</option>
                          <option value="Prêt-à-porter">Prêt-à-porter</option>
                          <option value="Promoteur, Constructeur">Promoteur, Constructeur</option>
                          <option value="Reconnaissance vocale">Reconnaissance 
                          vocale</option>
                          <option value="Recouvrement de créances">Recouvrement 
                          de créances</option>
                          <option value="Recrutement">Recrutement</option>
                          <option value="Relation presse / Relations publiques">Relation 
                          presse / Relations publiques</option>
                          <option value="Remise en forme">Remise en forme</option>
                          <option value="Rénovation & traitement des sols">Rénovation 
                          & traitement des sols</option>
                          <option value="Ressources humaines">Ressources humaines</option>
                          <option value="Restauration">Restauration</option>
                          <option value="Santé, beauté">Santé, beauté</option>
                          <option value="Secrétariat">Secrétariat</option>
                          <option value="Sécurité">Sécurité</option>
                          <option value="Service à la personne">Services à la 
                          personne</option>
                          <option value="Services aux entreprises">Services aux 
                          entreprises</option>
                          <option value="Sophrologie">Sophrologie</option>
                          <option value="Soutien scolaire">Soutien scolaire</option>
                          <option value="Sports">Sports</option>
                          <option value="Stores">Stores</option>
                          <option value="Télécommunications">Télécommunications</option>
                          <option value="Tendances">Tendances</option>
                          <option value="Tourisme">Tourisme</option>
                          <option value="Traduction">Traduction</option>
                          <option value="Traiteur">Traiteur</option>
                          <option value="Transport">Transport</option>
                          <option value="Vidéosurveillance">Vidéosurveillance</option>
                          <option value="Vins & spiritueux">Vins & spiritueux</option>
                          <option value="Vote électronique">Vote électronique</option>
                          <option value="Web agency">Web agency</option>
                          <option value="Yacht">Yacht</option>
                        </select>
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <div align="right">pr&eacute;sentation </div>
                      </td>
                      <td width="79%"> 
                        <textarea name="zone_texte" cols="25" rows="6"></textarea>
                      </td>
                    </tr>
                    <tr> 
                      <td width="21%"> 
                        <input name="nbre_champs_texte" type="hidden" id="nbre_champs_texte" value="13">
                        <input name="nbre_zones_texte" type="hidden" value="1">
                        <input name="nbre_zone_email" type="hidden" value="1">
                        <input name="nbre_zone_select" type="hidden" value="1">
                        <input name="titre_champ1" type="hidden" value="Login">
                        <input name="titre_champ2" type="hidden" value="Mdp">
                        <input name="titre_champ3" type="hidden" value="Enseigne">
                        <input name="titre_champ4" type="hidden" value="Nom">
                        <input name="titre_champ5" type="hidden" value="Prénom">
                        <input name="titre_champ6" type="hidden" value="Adresse">
                        <input name="titre_champ7" type="hidden" value="Adresse 2">
                        <input name="titre_champ8" type="hidden" value="Code postal">
                        <input name="titre_champ9" type="hidden" value="Ville">
                        <input name="titre_champ10" type="hidden" value="Tél.">
                        <input name="titre_champ11" type="hidden" value="Mob.">
                        <input name="titre_champ12" type="hidden" value="Fax">
                        <input name="titre_email" type="hidden" value="E-Mail">
                        <input name="titre_champ13" type="hidden" value="URL">
                        <input name="titre_select" type="hidden" value="Activité">
                        <input name="titre_zone" type="hidden" value="Présentation">
                      </td>
                      <td width="79%"> 
                        <input type="submit" value="Envoyer" name="envoyer">
                      </td>
                    </tr>
                  </table>
                  <p><br>
                    <br>
                    <br>
                    <br>
                  </p>
                </div>
              </form>
Si on plus, on me disait comment y inclure un champ de téléchargement de fichiers, ce serait extra !! :D