[RESOLU] aide sur formulaire php avec bouton radio

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 : [RESOLU] aide sur formulaire php avec bouton radio

Re: [RESOLU] aide sur formulaire php avec bouton radio

par jpp77100 » 14 sept. 2012, 08:52

la mise ne pahe email convient car c'est juste un sondage afin de savoir ce qui ne vas pas sur un site de vente en ligne afin de le modifier et le rendre plus attractif

Re: [RESOLU] aide sur formulaire php avec bouton radio

par xTG » 14 sept. 2012, 08:49

Je parlais de mise en page de l'email en fait. ;)

Re: [RESOLU] aide sur formulaire php avec bouton radio

par jpp77100 » 14 sept. 2012, 08:48

Bonjour xTG

Pour la mise en page en css , pas de probleme je sais faire.
Je suis maintenant en train de faire, apparaitre et disparaitre les champs mail et phone, a l'affichage, et qu'il apparraissen si oui est coché, tu vois pas encore fini, et en plus faire apparaitre la page de remùerciement en petit format.

a bientot

Re: [RESOLU] aide sur formulaire php avec bouton radio

par xTG » 14 sept. 2012, 08:41

Si tu souhaites une mise en page plus poussée saches que tu peux utiliser du HTML, il faut pour cela inclure le bon header pour que les balises soient interprétées.
Tu trouveras un exemple dans la documentation de la fonction mail().

Re: aide sur formulaire php avec bouton radio

par jpp77100 » 14 sept. 2012, 07:37

bonjour le me réponds à moi même :

j'ai trouvé on modifiant cette ligne :
$texte = $adr . $adrmail . $telephone . $facilite . $prix . $recherche . $contact . $texte;
comme cela :
$texte = $adr ."\n\n". $adrmail ."\n\n". $telephone ."\n\n". $facilite ."\n\n". $prix ."\n\n". $recherche ."\n\n". $contact ."\n\n". $texte;
j'obtiens le résultat suivant :
Votre nom : Durand

Email : [email protected]

Téléphone : 0160859617

Facilité d'utilisation du site : excellent

Niveaux de prix : excellent

Avez-vous trouvé ce que vous cherchiez ? : oui

Désirez-vous être contacté : non

Message complémentaire : bravo !

un grand merci a toi, je vais maintenant travailler ma mise en page

a bientôt

Re: aide sur formulaire php avec bouton radio

par jpp77100 » 13 sept. 2012, 17:04

oui j'ai déja vu ça dans des formulaire ainsi que nl2br

mais dans ceci je mets ça ou ?
$headers .= "Reply-To: ".$mail."\n";
	$headers .= "Content-Type: text/plain; charset=\"iso-8859-1\"";
                $adr ="Votre nom :  ".($_POST['adr']);
	$adrmail = "Email :  ".($_POST['adrmail']);
                $telephone = "Téléphone :  ".($_POST['telephone']);
                $facilite = "Facilité d'utilisation du site :  ".($_POST['facilite']);
                $prix = "Niveaux de prix :  ".($_POST['prix']);
                $recherche = "Avez-vous trouvé ce que vous cherchiez ? :  ".($_POST['recherche']);
                $contact = "Désirez-vous être contacté :  ".($_POST['contact']);
                $texte = $adr . $adrmail . $telephone . $facilite . $prix . $recherche . $contact . $texte;

Re: aide sur formulaire php avec bouton radio

par xTG » 13 sept. 2012, 16:40

C'est du plain/text donc il faut rajouter le caractère de retour à la ligne :
echo "Ceci est un \r\n test";
Ceci est un
test
Donc \r\n.

Re: aide sur formulaire php avec bouton radio

par jpp77100 » 13 sept. 2012, 15:52

yesssssss ça marche, merci a toi :D

par contre je recois les infos en vrac comme ça :
Votre nom : DurandEmail : [email protected]éléphone : 0160859617Facilité d'utilisation du site : excellentNiveaux de prix : excellentAvez-vous trouvé ce que vous cherchiez ? : ouiDésirez-vous être contacté : nonMessage complémentaire : bravo !

comment faire pour les recevoir comme ça :
Votre nom : Durand
Email : [email protected]
Téléphone : 0160859617
Facilité d'utilisation du site : excellent
Niveaux de prix : excellent
Avez-vous trouvé ce que vous cherchiez ? : oui
Désirez-vous être contacté : non
Message complémentaire : bravo !

on peut faire un retour à la ligne ?

Re: aide sur formulaire php avec bouton radio

par jpp77100 » 13 sept. 2012, 15:37

merci :)
Mais c'est bien là le problème, car je n'arrive pas a comprendre la suite, car pourtant j'ai bien cette ligne :
if(mail($destinataire,$sujet,$texte,$headers))
et même avec ton exemple de concaténation, je n'y arrive pas ! :?
merci

Re: aide sur formulaire php avec bouton radio

par xTG » 13 sept. 2012, 15:30

Belle avancée du coup, il ne reste plus qu'à transmettre ces informations à la fonction mail. :)
mail($destinataire,$sujet,$texte,$headers)
La variable $texte utilisée ici est le contenu de l'email, c'est donc elle qui doit contenir les informations que tu affiches avec echo.
Donc il te restes à rajouter ces variables dans la variable $texte (concaténation toujours) et tu recevras leurs valeurs dans le mail.

Re: aide sur formulaire php avec bouton radio

par jpp77100 » 13 sept. 2012, 14:57

bonjour

bon j'ai fais encore des recherches et essais voila le résultat :
mon code :

Code : Tout sélectionner

<?php if ($_POST['envoi'] == 'ok') { $destinataire = '[email protected]'; $sujet = 'Nouvel avis site boutique: '.stripslashes($_POST['sujet']); $texte = "Message complémentaire : ".($_POST['texte']); $headers .="From: sondage boutique<[email protected]>\n"; $headers .= "Reply-To: ".$mail."\n"; $headers .= "Content-Type: text/plain; charset=\"iso-8859-1\""; $adr ="Votre nom : ".($_POST['adr']); $adrmail = "Email : ".($_POST['adrmail']); $telephone = "Téléphone : ".($_POST['telephone']); $facilite = "Facilité d'utilisation du site : ".($_POST['facilite']); $prix = "Niveaux de prix : ".($_POST['prix']); $recherche = "Avez-vous trouvé ce que vous cherchiez ? : ".($_POST['recherche']); $contact = "Désirez-vous être contacté : ".($_POST['contact']); echo $adr,$adrmail,$telephone,$facilite,$prix,$recherche,$contact,$texte; // Ceci est un test if(mail($destinataire,$sujet,$texte,$headers)) header("Location:merci.html"); } else { ?> <!-- Javascript qui permet la vérification de la saisie --> <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> function verif() { if (veriffacilite() != true) { return false; } if (verifprix() != true) { return false; } if (verifrecherche() != true) { return false; } if (verifcontact() != true) { return false; } return true; } function veriffacilite() { var facilite = document.test.facilite; var nb = facilite.length; for (i=0;i<nb;i++) { if (facilite[i].checked) { return true; } } alert('Merci de repondre à la question : \nQuelle est la facilité d\'utilisation du site ?'); return false; } function verifprix() { var prix = document.test.prix; var nb = prix.length; for (i=0;i<nb;i++) { if (prix[i].checked) { return true; } } alert('Merci de repondre à la question : \nQue pensez vous de nos prix ?'); return false; } function verifrecherche() { var recherche = document.test.recherche; var nb = recherche.length; for (i=0;i<nb;i++) { if (recherche[i].checked) { return true; } } alert('Merci de repondre à la question : \nAvez vous trouvez ce que vous cherchiez ?'); return false; } function verifcontact() { var contact = document.test.contact; var nb = contact.length; for (i=0;i<nb;i++) { if (contact[i].checked) { if (document.test.contact[i].value == "oui") { if (document.test.adrmail.value == '' && document.test.telephone.value == '') { document.test.adrmail.style.backgroundColor='#CCFF33'; document.test.telephone.style.backgroundColor='#CCFF33'; alert('Souhaitant être contacté, \nMerci de renseigner votre adresse mail ou votre téléphone !'); document.test.adrmail.focus(); return false; } } return true; } } alert('Merci de repondre à la question : \nSouhaitez vous être contacté ?'); return false; } </script> <!-- Fin du Javascript --> <!-- Affichage du formulaire, il te faut faire la mise en forme --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Votre avis nous interesses</title> <style type="text/css"> <!-- body { background :C3CDD2;} .content { padding:5px; background-color:#C3CDD2; /* line-height:0px;*/ } .content p {margin-left:35%;} .content h3 {text-align:center;} /*.content input { margin-left:1%;}*/ --> </style> </head> <div class="content"> <h3>Merci de nous donner votre avis afin que notre site corresponde a vos attentes</h3> <FORM NAME="test" onSubmit="return verif()" action="<?=$_SERVER['PHP_SELF']?>" METHOD="POST"> <p>Votre nom : &nbsp;&nbsp;&nbsp;<input name="adr" value="">&nbsp;Optionnel</p> <p>Merci de donner une adresse mail ou un numéro </p><p>de téléphone si vous souhaitez être contacté.</p> <p>adresse mail : &nbsp;<input name="adrmail" value=""></p> <p>Téléphone : &nbsp;&nbsp;&nbsp; <input name="telephone" value=""></p> <p>Comment trouvez vous la facilité d'utilisation du site ?</p> <p><label><input type="radio" name="facilite" value="excellent"> excellent</label></p> <p><label><input type="radio" name="facilite" value="bien"> bien</label></p> <p><label><input type="radio" name="facilite" value="trop compliqué"> trop compliqué</label></p> <p>Que pensez vous de nos tarifs ?</p> <p><label><input type="radio" name="prix" value="excellent"> excellent</label></p> <p><label><input type="radio" name="prix" value="dans la moyenne"> dans la moyenne</label></p> <p><label><input type="radio" name="prix" value="bien"> bien</label></p> <p>Avez vous trouvez ce que vous cherchiez ?</p> <p><label><input type="radio" name="recherche" value="oui"> oui</label></p> <p><label><input type="radio" name="recherche" value="non"> non</label></p> <p>Souhaitez vous être contacté ?</p> <p><label><input type="radio" name="contact" value="oui"> oui</label></p> <p><label><input type="radio" name="contact" value="non"> non</label></p> <p><label><strong>Message complémentaire:</strong></label></p> <p><textarea cols="70" rows="4" name="texte"></textarea></p> <!-- Le input hidden ci-dessous permet de savoir au chargement de la page si le formulaire est chargé par le navigateur ou si il est envoyé par l'internaute --> <p><input type="hidden" name="envoi" value="ok"></p> <p><INPUT TYPE="submit" value="Soumettre" name="ok"></p> </FORM> </div> <!-- Fin du FORM --> </body> <?php } // Fin de la condition IF d'affichage du formulaire. ?>
Avec le mode echo en marche voici le résultat sur la page du navigateur:
Votre nom : durandEmail : [email protected]éléphone : 05 46 85 95 87Facilité d'utilisation du site : bienNiveaux de prix : excellentAvez-vous trouvé ce que vous cherchiez ? : nonDésirez-vous être contacté : ouiMessage complémentaire : bonjours !
Warning: Cannot modify header information - headers already sent by (output started at /homepages/6/00000000/htdocs/sondage.php:19) in /homepages/6/0000000/htdocs/sondage.php on line 32

Mais je ne reçois par email que le texte du message pas le n° telephone et les choix des boutons radio

merci encore

Re: aide sur formulaire php avec bouton radio

par xTG » 12 sept. 2012, 19:59

Ce code en tant que tel n'a rien à faire dans ton propre code.
Ce n'est qu'un exemple de la technique que tu dois utiliser, à savoir la concaténation des variables contenant les informations du formulaire.

Comme je te l'ai dit (et qu'il est montré dans le cours que je t'ai linké) il faut d'abord récupérer les variables du formulaire, puis les concaténer (comme dans mon exemple de code).

Re: aide sur formulaire php avec bouton radio

par jpp77100 » 12 sept. 2012, 17:00

ben, mon code est dèja en haut de ce post, ce qu'il y a c'est que je ne sais pas ou mettre :

Code : Tout sélectionner

$var1 = 'Ceci est un '; $var2 = 'test'; $message = $var1 . $var2; echo $message; // Ceci est un test
par rapport a mon code

merci

Re: aide sur formulaire php avec bouton radio

par xTG » 12 sept. 2012, 16:56

Ce n'est pas avec une réponse de ce genre que tu vas en avoir de l'aide...
C'est quoi qui te gêne dans ma réponse ? Le smiley ? Auquel cas tu peux le retirer et relire ma réponse.
Saches que je n'ai aucune boule de cristal et que donc sans code je ne peux te fournir la moindre réponse.

Si tu n'es pas capable de nous montrer les modifications apportées, tu es au moins capable de nous montrer la totalité du code en question non ?

Re: aide sur formulaire php avec bouton radio

par jpp77100 » 12 sept. 2012, 16:13

Comment montrer des modifications que je ne comprends pas.

je pensais être sur un forum pour aider les débutants, par sur un forum, ou l'on ce moque des débutants ?