Votre question

Probleme dans le code PHP d'un formulaire. Qui peut m'aider?

Tags :
  • Php
  • Programmation
Dernière réponse : dans Programmation
21 Novembre 2006 16:08:10

Bonjour à tous ! :) 

J'ai presque fini un formulaire en PHP, mais j'ai un tout petit soucis avec celui-ci : je suis certain qu'il s'agit d'une virgule mal placée ou autre mais j'ai tellement le nez dessus que je n'arrive pas à détecter d'ou vient le probleme...

Le probleme est que lorsque je remplis OUI à la première question (séduit) lors de l'envoi j'arrive sur une page me disant que toutes mes questions ne sont pas répondue. Or, lorsque je clique NON, ça fonctionne bien.

Ou est le soucis selon vous? Merci !

Citation :
<?php
$validation=0;
if($valider) {
if(!$sexe || !$age || !$seduit || !$moment || !$seances || !$materiel || (!$lundi && !$mardi && !$mercredi && !$jeudi && !$vendredi && !$nimportedi) || (!$sportype0 && !$sportype1 && !$sportype2 && !$sportype3 &&!$sportype4 && !$sportype5) || $budget=='' ) {
echo "<br><br><br><br><br><br><br><br><div align=center><font size=+1 face='Arial, Helvetica, sans-serif'>Il semblerait que vous ayez oublié de répondre à une ou plusieurs questions...<br><br><br>Utilisez la fonction page précédente de votre navigateur pour compléter votre formulaire. Merci.</font></div><br>";
} else {
if($seduit=='oui') {
echo "<br><br><br><br><br><br><br><br><div align=center><font size=+1 face='Arial, Helvetica, sans-serif'>Il semblerait que vous ayez oublié de répondre à une ou plusieurs questions...<br><br><br>Utilisez la fonction page précédente de votre navigateur pour compléter votre formulaire. Merci.</font></div><br><br>";
} else {
echo "<br><div align=center><br><br><br><br><font size=+3 face='Arial, Helvetica, sans-serif'>**</font><br><br><font size=+4 face='Arial, Helvetica, sans-serif'><b>www.sport-pros.com&lt;/b></font> <font size=+1 face='Arial, Helvetica, sans-serif'> <br><br>Nos coachs sportifs au service des entreprises comme des particuliers.</font><br><br><br><font size=+3 face='Arial, Helvetica, sans-serif'>*</font><br><br><br><font size=+1 face='Arial, Helvetica, sans-serif' color=green>Merci de votre contribution et à très bientot!</font><p></div><br><br>";
$validation=1;
}

}

}

if($validation==1) {
$mail="REPONSE AU QUESTIONNAIRE
Vous etes : $sexe
Votre age : $age
Seriez-vous seduit(e) par la mise en place de seances de sport sur votre site de travail? : $seduit
A quel moment de la journee prefereriez-vous les seances? : $moment
Combien de seances hebdomadaires vous conviendraient le mieux? : $seances
Quels jours de preference? : $lundi $mardi $mercredi $jeudi $vendredi $nimportedi
Type de sport? $sportype0 $sportype1 $sportype2 $sportype3 $sportype4 $sportype5
Prefereriez vous que le materiel soit fourni ou amener le votre ? : $materiel
Quel budget maximum annuel seriez-vous pret(e) a investir dans ces seances ? : $budget";
$email="david@tiscali.fr";
$sujet="Reponse au Questionnaire";
$headers="From: david@tiscali.fr";
mail($email,$sujet,$mail,$headers);
}


?>
<html>
<head>
<title>QUESTIONNAIRE</title>
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'>
</head>

<body bgcolor='#ffffff' text='#000000'>
<form method='post' action=''>
<blockquote>
<p align='center'><b><font size='6'>QUESTIONNAIRE ANONYME</font></b></p>
<p align='center'> </p>
<p><div align=center><img src="http://www.ferpourvous.com/coach/logo_g.gif"><img src="http://www.ferpourvous.com/coach/carreblanc.gif"> <a href="http://www.sport-pros.com" target=blanck><img src="http://www.ferpourvous.com/coach/logo11noir.gif" border=0></a></div></p>

<p><p><font face="Arial, Helvetica, sans-serif" size="+3">V</font><font face="Arial, Helvetica, sans-serif">otre comité d'entreprise souhaiterait connaitre vos désirs en terme d'activités sportives et/ou de décontration sur votre site de travail. Nous vous invitons à bien vouloir répondre à ce rapide questionnaire qui ne prend pas plus d'une minute. <br>Merci et bonne journée !
<hr><p>
<p><font face='Arial, Helvetica, sans-serif'>Vous êtes : </font>
<select name='sexe'>
<option value=''>Choisissez</option>
<option value='homme'
<?php if($sexe=='homme') echo " selected";?>
>Un homme</option>
<option value='femme'
<?php if($sexe=='femme') echo " selected";?>
>Une femme</option>
</select>
</p>
<p><font face='Arial, Helvetica, sans-serif'>Votre age</font> :
<?php echo "<input type='text' name='age' maxlength='2' size='5' value=$age>"; ?>
<font face='Arial, Helvetica, sans-serif'> </font><br><br>


<font face='Arial, Helvetica, sans-serif'>Seriez-vous séduit(e) par
la mise en place de séances de sport et/ou de décontraction sur votre site de travail?</font><br>
<font face='Times New Roman, Times, serif'>
<input type='radio' name='seduit' value='oui'
<?php if($seduit=='oui') echo " checked";?>
>
Oui.
<input type='radio' name='seduit' value='non'
<?php if($seduit=='non') echo " checked";?>
>
Non.</font><br><br>

<font face='Arial, Helvetica, sans-serif'>A quel moment de la journée
préfèreriez-vous les séances?</font><br>
<font face='Times New Roman, Times, serif'>
<input type='radio' name='moment' value='midi'
<?php if($moment=='midi') echo " checked";?>
>
Midi.
<input type='radio' name='moment' value='soir'
<?php if($moment=='soir') echo " checked";?>
>
Soir.
<input type='radio' name='moment' value='les deux'
<?php if($moment=='les deux') echo " checked";?>
>
Les deux.</font><br><br>

<font face='Arial, Helvetica, sans-serif'>Combien de séances hebdomadaires
vous conviendraient le mieux? </font><br>
<font face='Times New Roman, Times, serif'>
<input type='radio' name='seances' value='1'
<?php if($seances=='1') echo " checked";?>
>
1
<input type='radio' name='seances' value='2'
<?php if($seances=='2') echo " checked";?>
>
2
<input type='radio' name='seances' value='3'
<?php if($seances=='3') echo " checked";?>
>
3 </font><br><br>

<font face='Arial, Helvetica, sans-serif'>Quels jours de préférence?
(choix multiple possible)</font><br>
<font face='Times New Roman, Times, serif'>
<input type='checkbox' name='lundi' value='lundi'
<?php if($lundi=='lundi') echo " checked";?>
>
Lundi
<input type='checkbox' name='mardi' value='mardi'
<?php if($mardi=='mardi') echo " checked";?>
>
Mardi
<input type='checkbox' name='mercredi' value='mercredi'
<?php if($mercredi=='mercredi') echo " checked";?>
>
Mercredi
<input type='checkbox' name='jeudi' value='jeudi'
<?php if($jeudi=='jeudi') echo " checked";?>
>
Jeudi
<input type='checkbox' name='vendredi' value='vendredi'
<?php if($vendredi=='vendredi') echo " checked";?>
>
Vendredi
<input type='checkbox' name='nimportedi' value='peu importe'
<?php if($nimportedi=='peu importe') echo " checked";?>
>
Peu importe.</font><br><br>

<font face="Arial, Helvetica, sans-serif">Quel type d'activité vous séduirait? (choix multiple possible)</font><br>
<font face='Times New Roman, Times, serif'>

<input type='checkbox' name='sportype4' value='Yoga'
<?php if($sportype4=='Yoga') echo " checked";?>
>
Yoga<br>
<input type='checkbox' name='sportype5' value='Danse'
<?php if($sportype5=='Danse') echo " checked";?>
>
Cours de Danse (Orientale, Salsa, ect.)<br>
<input type='checkbox' name='sportype0' value='abdo-fessiers'
<?php if($sportype0=='abdo-fessiers') echo " checked";?>
>
Abdo-fessiers ( Remodeler les muscles des cuisses, raffermir les fessiers,
avoir une sangle abdominale tonique).
<br><input type='checkbox' name='sportype1' value='stretching'
<?php if($sportype1=='stretching') echo " checked";?>
>
Stretching (Gagner en amplitude articulaire, musculaire et décontracter
l'ensemble du corps).
<br><input type='checkbox' name='sportype2' value='step'
<?php if($sportype2=='step') echo " checked";?>
>
Step (Amélioration de la coordination, de l'endurance aérobie
et travail musculaire intense et rythmé).
<br><input type='checkbox' name='sportype3' value='combat'
<?php if($sportype3=='combat') echo " checked";?>
>
Sport de combat (Body Combat, Boxe,...)</font></p>
<p><font face='Arial, Helvetica, sans-serif'>Préfèreriez vous
que le matériel (Tapis de sol, Step, Gants …) soit fourni ou
préfèreriez-vous amener le votre ?</font><br>
<font face='Times New Roman, Times, serif'>
<input type='radio' name='materiel' value="Je prefere qu'on me fournisse le materiel"
<?php if($materiel=='Je prefere qu\'on me fournisse le materiel') echo " checked";?>
>
Je préfère qu'on me fournisse le matériel.
<br><input type='radio' name='materiel' value='Je prefere ramener le mien'
<?php if($materiel=='Je prefere ramener le mien') echo " checked";?>
>
Je préfère ramener le mien.</font><br><br>

<font color=red><b><u>QUESTION OPTIONNELLE SELON ENTREPRISES :</b></u> </font><p>
<font face='Arial, Helvetica, sans-serif'>Quel budget maximum <b>annuel</b>
seriez-vous prêt(e) à investir dans ces séances ? <br></font>
<?php echo "<input type='text' name='budget' size='5' value=$budget>"; ?> euros par an.
</p>
<hr><br>
<font face='Arial, Helvetica, sans-serif'>Saviez-vous que Sport-Pros offrait également la possibilité d'avoir son propre coach sportif, à domicile?</font><br>
<font face='Times New Roman, Times, serif'>
<input type='radio' name='pub' value='OUI'>
Oui.
<input type='radio' name='pub' value='Non, mais maintenant je le sais ! :) '>
Non, mais maintenant je le sais ! :) <br>
<hr>
<p align='center'>
<input type='submit' name='valider' value='Valider votre questionnaire'>
</p>
</form>
<p>
</p>
</body>
</html>

Autres pages sur : probleme code php formulaire aider

21 Novembre 2006 16:23:55

Tu as oublié un $validation=1 à la fin de ton traitement de la réponse "oui" dans la partie $seduit
21 Novembre 2006 16:25:44

je crois que si tu formates mieux ton code et que tu le mettais dans une balise code, ca serait mieux.

tu ecrit:
  1. if($seduit=='oui') {
  2. echo "<br><br><br><br><br><br><br><br><div align=center><font size=+1 face='Arial, Helvetica, sans-serif'>Il semblerait que vous ayez oublié de répondre à une ou plusieurs questions...<br><br><br>Utilisez la fonction page précédente de votre navigateur pour compléter votre formulaire. Merci.</font></div><br><br>";
  3. }


donc je crois que c'est normal qu'il te dise de completer ton formulaire si tu réponds oui
Contenus similaires
21 Novembre 2006 16:41:20

Coca 25 : Merci pour le tuyaix, mais j'ai déjà beaucoup de mal et j'ai vraiment pas le courage de tout recommencer. Mais c'est sympa quand même.

Cybertaf : euh... sans vouloir abuser, tu pourrais me montrer précisément ou je dois rajouter $validation=1, car je sais pas ou ça va... ^ ^

Merci !
21 Novembre 2006 17:06:05

Je crois que tu n'as pas lu ma réponse jusqu'au bout, dans ton programme, tu demandes de t'afficher:
Citation :

il semblerait que vous ayez oublié de répondre à une ou plusieurs questions...

si tu réponds oui à la question séduit, et c'est ce qu'il fait :ouch: 
le $validation même s'il est pas utilisé comme il faut n'a rien à voir
21 Novembre 2006 17:47:03

Donc, à la place de if($seduit=='oui'), il faudrait que je marque quoi? :heink: 
a c 145 L Programmation
21 Novembre 2006 17:51:39

  1. <?php
  2. $validation=0;
  3. if($valider && ($seduit=='oui')) {
  4. if(!$sexe || !$age || !$seduit || !$moment || !$seances || !$materiel || (!$lundi && !$mardi && !$mercredi && !$jeudi && !$vendredi && !$nimportedi) || (!$sportype0 && !$sportype1 && !$sportype2 && !$sportype3 &&!$sportype4 && !$sportype5) || $budget=='' ) {
  5. echo "<br><br><br><br><br><br><br><br><div align=center><font size=+1 face='Arial, Helvetica, sans-serif'>Il semblerait que vous ayez oublié de répondre à une ou plusieurs questions...<br><br><br>Utilisez la fonction page précédente de votre navigateur pour compléter votre formulaire. Merci.</font></div><br>";
  6. } else {
  7. echo "<br><div align=center><br><br><br><br><font size=+3 face='Arial, Helvetica, sans-serif'>**</font><br><br><font size=+4 face='Arial, Helvetica, sans-serif'><b>www.sport-pros.com</b></font> <font size=+1 face='Arial, Helvetica, sans-serif'> <br><br>Nos coachs sportifs au service des entreprises comme des particuliers.</font><br><br><br><font size=+3 face='Arial, Helvetica, sans-serif'>*</font><br><br><br><font size=+1 face='Arial, Helvetica, sans-serif' color=green>Merci de votre contribution et à très bientot!</font><p></div><br><br>";
  8. }
  9. }

(grosso-modo)
Bref, revoit ton système de validation et les enchainements.
21 Novembre 2006 18:10:36

Davidoux94 a dit :
Donc, à la place de if($seduit=='oui'), il faudrait que je marque quoi? :heink: 


c'est de la logique après
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS