formulaire

olisnow
Invité n'ayant pas de compte PHPfrance

02 févr. 2010, 01:27

Bonjour, j'ai un soucis sur un formulaire:
j essaye d'envoyer par mail plusieurs données d'un checkbox

Code : Tout sélectionner

<?php @$graphisme = $_POST["graphisme"]; for ($i=0; $i<count($graphisme); $i++) {$graphisme[$i].'<br />';} $mail = 'choix: '.$graphisme[$i].'<br />';."\r\n"; ?> <html> <body> <form action="test.php" method="post"> <?php echo $mail; ?> Qu'est-ce que vous aimer ?<br /> <input type="checkbox" name="graphisme[]" value="web" /> Faire du shopping<br /> <input type="checkbox" name="graphisme[]" value="design" /> Faire du sport<br /> <input type="checkbox" name="graphisme[]" value="php" /> Aller au théatre<br /> <input type="checkbox" name="graphisme[]" value="html" /> Aller au cinéma<br /> <input type="submit" value="Ma réponse"/> </form> </body> </html>
je voudrais avoir un truc du genre
choix=web
choix=design

merci d'avance

Mammouth du PHP | 985 Messages

02 févr. 2010, 01:56

Face à la roche, le ruisseau l'emporte toujours, non pas par la force mais par la persévérance.

ViPHP
ViPHP | 1996 Messages

02 févr. 2010, 09:58

Je ne suis pas sûr mais je crois que la notation graphisme[] est réservée au <select> multiples.
Je pense que le plus simple est de tricher un peu ... et enlèves moi les @ par pitié...
<?php
if (isset ($_POST))
{
  //on recherche toutes les clefs "graphisme"
  foreach ($_POST as $cle => $valeur)
  {
     if (preg_match("#graphisme#",$cle)
     {
         $graphique[] = $valeur;
     }
  }
  for ($i=0; $i<count($graphisme); $i++) 
  {
    $graphisme[$i].'';
   }
   
    $mail = 'choix: '.$graphisme[$i].'
';."\r\n";
}
?>
<html>
<body>
<form action="test.php" method="post">
<?php echo $mail; ?>
    Qu'est-ce que vous aimer ?

    <input type="checkbox" name="graphisme_1" value="web" />
    Faire du shopping

    <input type="checkbox" name="graphisme_2" value="design" />
    Faire du sport

    <input type="checkbox" name="graphisme_3" value="php" />
    Aller au théatre

    <input type="checkbox" name="graphisme_4" value="html" />
    Aller au cinéma

    <input type="submit" value="Ma réponse"/>
</form>
</body>
</html>
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

olisnow
Invité n'ayant pas de compte PHPfrance

02 févr. 2010, 10:34

Parse error: parse error in C:\Program Files\EasyPHP5.3.0\www\olive\test1.php on line 8

olisnow
Invité n'ayant pas de compte PHPfrance

02 févr. 2010, 10:41

voici le code complet
je souhaite envoyé par mail tous les champs sélectionner j ai trouver mais ce n est pas propre !
merci d avance

Code : Tout sélectionner

<?php /* Si le formulaire est envoyé alors on fait les traitements */ if (isset($_POST['envoye'])) { /* Récupération des valeurs des champs du formulaire */ if (get_magic_quotes_gpc()) { $nom = stripslashes(trim($_POST['nom'])); $prenom = stripslashes(trim($_POST['prenom'])); $tel = stripslashes(trim($_POST['tel'])); $adresse = stripslashes(trim($_POST['adresse'])); $adresse1 = stripslashes(trim($_POST['adresse1'])); $cp = stripslashes(trim($_POST['cp'])); $ville = stripslashes(trim($_POST['ville'])); $email = stripslashes(trim($_POST['email'])); $expediteur = stripslashes(trim($_POST['email'])); $sujet = stripslashes(trim($_POST['sujet'])); $message = stripslashes(trim($_POST['message'])); $pages = stripslashes(trim($_POST['pages'])); @$qualifierbesoin = stripslashes(trim($_POST['qualifierbesoin'])); $graphisme0 = stripslashes(trim($_POST['graphisme0'])); $graphisme1 = stripslashes(trim($_POST['graphisme1'])); $graphisme2 = stripslashes(trim($_POST['graphisme2'])); $graphisme3 = stripslashes(trim($_POST['graphisme3'])); } else { $nom = stripslashes(trim($_POST['nom'])); $prenom = stripslashes(trim($_POST['prenom'])); $tel = stripslashes(trim($_POST['tel'])); $adresse = stripslashes(trim($_POST['adresse'])); $adresse1 = stripslashes(trim($_POST['adresse1'])); $cp = stripslashes(trim($_POST['cp'])); $ville = stripslashes(trim($_POST['ville'])); $email = stripslashes(trim($_POST['email'])); $expediteur = stripslashes(trim($_POST['email'])); $sujet = stripslashes(trim($_POST['sujet'])); $message = stripslashes(trim($_POST['message'])); @$souhait0 = stripslashes(trim($_POST['souhait0'])); @$souhait1 = stripslashes(trim($_POST['souhait1'])); @$souhait2 = stripslashes(trim($_POST['souhait2'])); @$souhait3 = stripslashes(trim($_POST['souhait3'])); @$souhait4 = stripslashes(trim($_POST['souhait4'])); @$souhait5 = stripslashes(trim($_POST['souhait5'])); @$souhait6 = stripslashes(trim($_POST['souhait6'])); $pages = stripslashes(trim($_POST['pages'])); @$qualifierbesoin = stripslashes(trim($_POST['qualifierbesoin'])); @$graphisme0 = stripslashes(trim($_POST['graphisme0'])); @$graphisme1 = stripslashes(trim($_POST['graphisme1'])); @$graphisme2 = stripslashes(trim($_POST['graphisme2'])); @$graphisme3 = stripslashes(trim($_POST['graphisme3'])); } /* Expression régulière permettant de vérifier si le * format d'une adresse e-mail est correct */ $regex_mail = '/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i'; /* Expression régulière permettant de vérifier qu'aucun * en-tête n'est inséré dans nos champs */ $regex_head = '/[\n\r]/'; /* Si le formulaire n'est pas posté de notre site on renvoie * vers la page d'accueil */ if($_SERVER['HTTP_REFERER'] != 'http://127.0.0.1/olive/devis.php?Url=devis') { header('Location: http://127.0.0.1/olive/devis.php?Url=devis'); } /* On vérifie que tous les champs sont remplis */ elseif (empty($nom) || empty($prenom) || empty($tel) || empty($email) || empty($message) || empty($expediteur)) { $alert = 'Tous les champs doivent être renseignés'; } /* On vérifie que le format de l'e-mail est correct */ elseif (!preg_match($regex_mail, $expediteur) || preg_match($regex_head, $email)) { $alert = 'L\'adresse '.$expediteur.' n\'est pas valide'; } /* On vérifie qu'il n'y a aucun header dans les champs */ elseif (preg_match($regex_head, $expediteur) || preg_match($regex_head, $nom) || preg_match($regex_head, $sujet)) { $alert = 'En-têtes interdites dans les champs du formulaire'; } /* Si aucun problème et aucun cookie créé, on construit le message et on envoie l'e-mail */ elseif (!isset($_COOKIE['sent'])) { /* Destinataire (votre adresse e-mail) */ $to = '[email protected]'; /* Construction du message */ $msg = 'Coucou, voici un nouveau devis!'."\r\n\r\n"; $msg .= 'Ce mail est envoyer depuis la page Devis du site par '.$nom.' '.$prenom."\r\n\r\n"; $msg .= 'Qui: '.$nom.' '.$prenom."\r\n"; $msg .= 'Adresse: '.$adresse."\r\n"; $msg .= 'Adresse(suite): '.$adresse1."\r\n"; $msg .= 'Code Postal: '.$cp."\r\n"; $msg .= 'Ville: '.$ville."\r\n"; $msg .= 'Tel: '.$tel."\r\n"; $msg .= 'Email: '.$email."\r\n\r\n"; $msg .= 'Voici le message :'."\r\n"; $msg .= '***************************'."\r\n"; $msg .= $message."\r\n"; $msg .= '***************************'."\r\n\r\n"; $msg .= 'Plus de detaille sur la commande de la commande :'."\r\n"; $msg .= 'Souhait :'.$souhait0."\r\n"; $msg .= 'Souhait :'.$souhait1."\r\n"; $msg .= 'Souhait :'.$souhait2."\r\n"; $msg .= 'Souhait :'.$souhait3."\r\n"; $msg .= 'Souhait :'.$souhait4."\r\n"; $msg .= 'Souhait :'.$souhait5."\r\n"; $msg .= 'Souhait :'.$souhait6."\r\n"; $msg .= 'Besoin :'.$qualifierbesoin."\r\n"; $msg .= 'Graphisme :'.$graphisme0."\r\n"; $msg .= 'Graphisme :'.$graphisme1."\r\n"; $msg .= 'Graphisme :'.$graphisme2."\r\n"; $msg .= 'Graphisme :'.$graphisme3."\r\n"; $msg .= 'Nbre de pages :'.$pages."\r\n"; /* En-têtes de l'e-mail */ $headers = 'From: '.$nom.' <'.$expediteur.'>'."\r\n\r\n"; /* Envoi de l'e-mail */ if (mail($to, $sujet, $msg, $headers)) { $alert = 'E-mail envoyé avec succès'; /* On créé un cookie de courte durée (ici 120 secondes) pour éviter de * renvoyer un mail en rafraichissant la page */ setcookie("sent", "1", time() + 120); /* On détruit la variable $_POST */ unset($_POST); } else { $alert = 'Erreur d\'envoi de l\'e-mail'; } } /* Cas où le cookie est créé et que la page est rafraichie, on détruit la variable $_POST */ else { unset($_POST); } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Olivier GRENET - Auto Entrepreneur - Conseil - Webdesign - Formation</title> <!-- Debut des Meta --> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="Description" content="Grenet Olivier - Auto-entrepreneur - Conseil - WebDesign - Formation" /> <meta name="Keywords" content="Grenet Olivier,Auto-entrepreneur,conseil,webDesign,formation, maintenance, informatique" /> <meta name="abstract" content="Grenet Olivier - Auto-entrepreneur - Conseil - WebDesign - Formation"> <meta name="robots" content="All." /> <meta name="Author" content="GRENET OLIVIER"> <meta name="Copyright" content="Copyright©GRENET OLIVIER 2009"> <meta name="Indentifier-URL" content="http://grenetolivier.fr/"> <meta name="Generator" content="Pspad,Dreamweaver"> <meta name="Date" content="23 Mai 2009"> <meta http-equiv="language" content="fr"> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> <!-- Fin des Meta --> <link rel="icon" href="favicon.ico" type="image/x-icon"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> <!-- Debut CSS --> <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" /> <!-- Fint CSS --> <script language="JavaScript"> function retour() { window.history.back(); } </script> <STYLE TYPE="text/css" MEDIA="screen,print"> @font-face { font-family: "HoboStd"; src: local("HoboStd"), url("font/HoboStd.ttf"); format ("truetype"); } .font { font-family: HoboStd } </STYLE> </head> <body bgcolor="#FFF"> <table width="1316" height="106" border="0"> <tr> <td width="329" height="102" align="right"><a href="javascript:history.back()" ><img src="img/retour.png" width="55" border="0" /></a></td> <td width="655" align="center" class="font"><img src="img/icon/devis.png" width="75" border="0" />&nbsp;<b><font size="4" color="#CCC">Devis</font></b></td> <td width="318"><img src="img/grenet_olivier.png" border="0" /></td> </tr> </table> <div align="center"> <a href="home.php?Url=accueil"><img src="img/nav/accueil.png" border="0" /></a> <a href="news.php?Url=News"><img src="img/nav/news.png" border="0" /></a> <a href="conseil.php?Url=conseil"><img src="img/nav/conseil.png" border="0" /></a> <a href="web.php?Url=web"><img src="img/nav/web.png" border="0" /></a> <img src="img/nav/devis.png" border="0"/> <a href="contact.php?Url=contact"><img src="img/nav/contact.png" border="0" /></a> </div> <div id="conseil" align="center" class="font"> <br /> <b><font size="4" color="#999999">Devis:</font></b><br /><br /> <font size="2" color="#FFF">&nbsp;&nbsp;Pour que je vous communique un devis de création de site Internet, je dois connaître votre projet<br /> et vos attentes. Pour cela, merci de compléter le formulaire situé ci-dessous de manière détaillée. <br /> Vous pouvez aussi me contacter directement par téléphone au <strong>06 16 25 14 76</strong>.</font><br /><br /> <form action="devis.php?Url=devis" method='post' > <p align="center"><font color="red"><?php if (!empty($alert)){echo $alert ;}?></font></p> <p align="center"<FONT color=red>* Champ Obligatoire</FONT></p> <b><font size="2" color="#999999">Vos coordonnées:</font></b><br /> <table width="395" border="0" align="center"> <tr> <td width="122"><label align="center" for="nom"><FONT size="2" color="#999999">Nom :</FONT><FONT color=red>*</FONT></label></td> <td width="263"><input type="text" id="nom" name="nom" title="Veuillez saisir votre prénom" value="<?php echo (isset($_POST['nom'])) ? $nom : '' ?>" /></td> </tr> <tr> <td><label for="prenom"><FONT size="2" color="#999999">Prenom : </FONT><FONT color=red>*</FONT></label></td> <td><input type="text" id="prenom" name="prenom" title="Veuillez saisir votre prénom" value="<?php echo (isset($_POST['prenom'])) ? $prenom : '' ?>" /></td> </tr> <tr> <td><label for="tel"><FONT size="2" color="#999999">Adresse : </FONT><FONT color=red>*</FONT></label></td> <td><input type="text" id="adresse" name="adresse" value="<?php echo (isset($_POST['adresse'])) ? $adresse : '' ?>" /></td> </tr> <tr> <td><label for="tel"><FONT size="2" color="#999999">Adresse (suite) : </FONT></label></td> <td><input type="text" id="adresse1" name="adresse1" value="<?php echo (isset($_POST['adresse1'])) ? $adresse1 : '' ?>" /></td> </tr> <tr> <td><label for="tel"><FONT size="2" color="#999999">Code Postal : </FONT><FONT color=red>*</FONT></label></td> <td><input type="text" id="cp" name="cp" value="<?php echo (isset($_POST['cp'])) ? $cp : '' ?>" /></td> </tr> <tr> <td><label for="tel"><FONT size="2" color="#999999">Ville : </FONT><FONT color=red>*</FONT></label></td> <td><input type="text" id="ville" name="ville" value="<?php echo (isset($_POST['ville'])) ? $ville : '' ?>" /></td> </tr> <tr> <td><label for="tel"><FONT size="2" color="#999999">Téléphone : </FONT><FONT color=red>*</FONT></label></td> <td><input type="text" id="tel" name="tel" value="<?php echo (isset($_POST['tel'])) ? $tel : '' ?>" /></td> </tr> <tr> <td><label for="email"><FONT size="2" color="#999999">E-mail : </FONT><FONT color=red>*</FONT></label></td> <td><input type="text" id="email" name="email" value="<?php echo (isset($_POST['email'])) ? $expediteur : '' ?>" /></td> </tr> </table> <label for="sujet"></label> <input type="hidden" id="sujet" name="sujet" value="<?php echo (isset($_POST['sujet'])) ? $sujet : 'Nouveau devis du site Grenet-Conseil' ?>" /> <table width="395" border="0" align="center"> <tr> <td width="130"><label for="message"><FONT size="2" color="#999999">Message :</FONT><FONT color=red>*</FONT></label></td> <td width="263"><textarea id="message" name="message" cols="30" rows="4"> <?php echo (isset($_POST['message'])) ? $message : '' ?> </textarea></td> </tr> </table> <br /> <b><font size="2" color="#999999">Vous souhaitez:</font></b><br /> <font size="2" color="#FFF"> <INPUT size=30 type='checkbox' name="souhait0" value="Creer un site internet">Créer un site internet<br /> <INPUT size=30 type='checkbox' name="souhait1" value="Refaire un site web existant">Refaire un site web existant <br /> <INPUT size=30 type='checkbox' name="souhait2" value="Une prestation specifique sur-mesure">Une prestation spécifique sur-mesure<br /> <INPUT size=30 type='checkbox' name="souhait3" value="Une prestation d hebergement mutualiser de site Internet">Une prestation d’hébergement mutualisé de site Internet <br /> <INPUT size=30 type='checkbox' name="souhait4" value="Une prestation dhebergement dedie de site Internet">Une prestation d’hébergement dédié de site Internet<br /> <INPUT size=30 type='checkbox' name="souhait5" value="Une prestation de referencement de site Internet">Une prestation de référencement de site Internet <br /> <INPUT size=30 type='checkbox' name="souhait6" value="Autres">Autres<br /><br /> </font> <b><font size="2" color="#999999">Qualifier votre besoin:</font></b><br /> <font size="2" color="#FFF"> <INPUT size=30 type='radio' name="qualifierbesoin" value="Site simple type vitrine" multiple>Site simple type vitrine<br /> <INPUT size=30 type='radio' name="qualifierbesoin" value="Boutique de E-commerce" multiple>Boutique de commerce électronique<br /> <INPUT size=30 type='radio' name="qualifierbesoin" value="Site de marque" multiple>Site de marque<br /> <INPUT size=30 type='radio' name="qualifierbesoin" value="Site de gestion de contenu (CMS)" multiple>Site de gestion de contenu (CMS)<br /> <INPUT size=30 type='radio' name="qualifierbesoin" value="Site Internet en plusieurs langues" multiple>Site Internet en plusieurs langues<br /> <INPUT size=30 type='radio' name="qualifierbesoin" value="Autres" multiple>Autres<br /><br /> </font> <b><font size="2" color="#999999">Design et graphisme:</font></b><br /> <font size="2" color="#FFF"> <INPUT size=30 type='checkbox' name="graphisme0" value="Logo a realiser">Logo à réaliser <br /> <INPUT size=30 type='checkbox' name="graphisme1" value="Charte graphique a realiser">Charte graphique à réaliser<br /> <INPUT size=30 type='checkbox' name="graphisme2" value="Clip animer (Flash) a realiser">Clip animé (Flash) à réaliser <br /> <INPUT size=30 type='checkbox' name="graphisme3" value="Autres">Autres<br /><br /> </font> <b><font size="2" color="#999999">Nombre de pages:</font></b> <SELECT name="pages" class="font"> <OPTION value="null" class="font" <?php if (!isset($_POST['pages']) || $_POST['pages'] == 'Nbre de pages') { echo ' selected="selected"'; } ?> > Nbre de pages </option> <option value="de 1 a 5" <?php if (!isset($_POST['pages']) || $_POST['pages'] == 'de 1 a 5') ?> > de 1 à 5 </option> <option value="de 5 a 10" <?php if (!isset($_POST['pages']) || $_POST['pages'] == 'de 5 a 10') ?> > de 5 à 10 </option> <option value="+ de 10" <?php if (!isset($_POST['pages']) || $_POST['pages'] == '+ de 10') ?> > + de 10 </option> </SELECT><br /><br /> <input type="submit" name="envoye" value="Envoyer" />&nbsp;&nbsp;<input type="reset" name="Annuler" id="Annuler" value="Annuler" /> </form></p> </div></div> </body> </html>

ViPHP
ViPHP | 5462 Messages

02 févr. 2010, 11:07

si y'a pas de traitement derriere ta pas besion de PHP pour faire ca

dans ton form en type tu met : "text/plain" et en action du met l'adresse mail

olisnow
Invité n'ayant pas de compte PHPfrance

02 févr. 2010, 11:38

oui mais je veux que se soit invisible pour le client !

ViPHP
ViPHP | 5462 Messages

02 févr. 2010, 11:53

oui mais je veux que se soit invisible pour le client !
qu'est ce qui est invisible ?