Formulaire php ereure Notice: Undefined index

Fermé
rawars - 25 sept. 2009 à 23:01
 rawars - 27 sept. 2009 à 22:08
Bonjour,
je suis en train de realiser un code en php pour l'integer dans mon site pour mettre un place un systeme de sondage (je m'occuperait de MySQL plus tard )

voici le messages d'ereures:

Notice: Undefined index: sondage_saison13 in C:\wamp\www\south park streaming\formulaire.php on line 8
Notice: Undefined index: sondage_saison13 in C:\wamp\www\south park streaming\formulaire.php on line 10
Notice: Undefined index: sondage_saison13 in C:\wamp\www\south park streaming\formulaire.php on line 12
Notice: Undefined index: sondage_saison13 in C:\wamp\www\south park streaming\formulaire.php on line 14
Notice: Undefined index: sondage_saison13 in C:\wamp\www\south park streaming\formulaire.php on line 16
Notice: Undefined index: sondage_saison13 in C:\wamp\www\south park streaming\formulaire.php on line 18
Notice: Undefined index: sondage_saison13 in C:\wamp\www\south park streaming\formulaire.php on line 20
Vous n avez coché aucune case

et voici le code:

<html>
<head>
</head>
<body>

<?php
if ($_POST['sondage_saison13']=='1')
echo 'vous avez voté pour l épisode 1';
elseif ($_POST['sondage_saison13']=='2')
echo 'vous avez voté pour l épisode 2';
elseif ($_POST['sondage_saison13']=='3')
echo 'vous avez voté pour l épisode 3';
elseif ($_POST['sondage_saison13']=='4')
echo 'vous avez voté pour l épisode 4';
elseif ($_POST['sondage_saison13']=='5')
echo 'vous avez voté pour l épisode 5';
elseif ($_POST['sondage_saison13']=='6')
echo 'vous avez voté pour l épisode 6';
elseif ($_POST['sondage_saison13']=='7')
echo 'vous avez voté pour l épisode 7';
else
echo 'Vous n avez coché aucune case';

?>


<form method="post" action="formulaire.php">
<p>
<fieldset>
<legend>Sondage</legend>
<label for="sondage">quel est votre episode preferé?</label> : <br/>
<input type="checkbox" name="sondage_saison13" value="1" />epsiode 1 de la saison 13<br/>
<input type="checkbox" name="sondage_saison13" value="2" />epsiode 2 de la saison 13<br/>
<input type="checkbox" name="sondage_saison13" value="3" />epsiode 3 de la saison 13<br/>
<input type="checkbox" name="sondage_saison13" value="4" />epsiode 4 de la saison 13<br/>
<input type="checkbox" name="sondage_saison13" value="5" />epsiode 5 de la saison 13<br/>
<input type="checkbox" name="sondage_saison13" value="6" />epsiode 6 de la saison 13<br/>
<input type="checkbox" name="sondage_saison13" value="7" />epsiode 7 de la saison 13<br/>
<input type="submit" value="voter" />
</fieldset>
</p>
</form>

</body>
</html>


si quelqu'un pourrait m'aide sa fait 2.30h que je parcoure les forums et je n'ai rien trouver de concret pour enlever les erreurs le pire c'est que le code marche ....
merci d'avance
A voir également:

5 réponses

Bonjour

Quand tu affiches ton formulaire pour la première fois, la variable $_POST['sondage_saison13'] n'est pas définie puisque le formulaire n'a pas encore été renvoyé par le client. Donc tu ne peux pas tester sa valeur.
Il ne faut faire la série de tests que si la variable est définie :
if (isset ($_POST['sondage_saison13'])) {
if ($_POST['sondage_saison13']=='1')
echo 'vous avez voté pour l épisode 1';
elseif ($_POST['sondage_saison13']=='2')
echo 'vous avez voté pour l épisode 2';
elseif ($_POST['sondage_saison13']=='3')
echo 'vous avez voté pour l épisode 3';
elseif ($_POST['sondage_saison13']=='4')
echo 'vous avez voté pour l épisode 4';
elseif ($_POST['sondage_saison13']=='5')
echo 'vous avez voté pour l épisode 5';
elseif ($_POST['sondage_saison13']=='6')
echo 'vous avez voté pour l épisode 6';
elseif ($_POST['sondage_saison13']=='7')
echo 'vous avez voté pour l épisode 7';
else
echo 'Vous n avez coché aucune case'; 
}
0
ok merci je test j'avait trouver que le probleme venai de "isset" mais j'arivait jamais a le mettre en place concretement
0
sa marche merci tu gere je commencait a en avoir vraivement marre
merci encore
0
Je conseille encore une fois l'utilisation des classes XBPlog : http://www.xbplog.com/formulaire-en-php.php

Avec ces outils, tu n'aurais pas à faire tous ces tests très lourds.

Il suffirait de faire :

if ($f->checkForm($_POST, 1) === true)
echo 'Vous avez vôté pour l\'épisode '.$_POST['sondage_saison13'];

Bonne programmation ;)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ok merci je regarde sa
0