Problème traitement bouton radio

WebmaS -  
 WebmaS -
Bonjour,

j'ai un problème avec le traitement des boutons radio !!

Voici un extrait du code de ma page inscription :

Code :

1. <tr>
2. <?php
3. function getSex($sexe)
4. {
5. $default = '';
6.
7. if (isset($_POST['sexe']))
8. {
9. if ($_POST['sexe'] == $sexe)
10. {
11. $default='selected="selected"';
12. }
13. }
14. return $default;
15. }
16. ?>
17. <td><label for="sexe">Sexe*</label></td>
18. <td><input type="radio" name="sexe" value="masc" <?php echo getSex('masc'); ?> checked="checked" /> Masc
19. <input type="radio" name="sexe" value="fem" <?php echo getSex('fem'); ?> /> Fem </td>
20. </tr>

Maintenant un extrait de ma page : traitement-inscription :

Code :

1. // Sexe
2. if(isset($_POST['sexe']))
3. {
4. $sexe = trim($_POST['sexe']);
5. $sexe_result = checkSex($sexe);
6. if($sexe_result == 'sexefalse')
7. {
8. $_SESSION['sexe_info'] = '<span class="erreur">Le sexe '.htmlspecialchars($sexe, ENT_QUOTES).' est incorrect.</span><br/>';
9. $_SESSION['form_sexe'] = '';
10. $_SESSION['erreurs']++;
11. }
12. else if($sexe_result == 'ok')
13. {
14. $_SESSION['sexe_info'] = '';
15. $_SESSION['form_sexe'] = $sexe;
16. }
17. else if($sexe_result == 'empty')
18. {
19. $_SESSION['sexe_info'] = '<span class="erreur">Vous n\'avez pas entré de sexe.</span><br/>';
20. $_SESSION['form_sexe'] = '';
21. $_SESSION['erreurs']++;
22. }
23. }
24. else
25. {
26. header('Location: ../index.php');
27. exit();
28. }

Et enfin la fonction checkSex qui est appelé dans traitement-inscription :

Code :

1. function checkSex($sexe)
2. {
3. if($sexe == '') return 'empty';
4. else if(!preg_match('#(masc|fem)#', $sexe)) return 'sexefalse';
5.
6. else return 'ok';
7. }

Lors de la validation du formulaire, il n'y a pas de problème, sauf que mon champ sexe dans la base de donnée n'est pas renseigné ! Pourtant, il n'y a pas de problème au niveau de l'insertion des données dans la BDD. Je pense que le problème vient de la récupération de la valeur (masc ou fem) dans le formulaire, mais je trouve pas de solutions...
A voir également:

1 réponse

WebmaS
 
Ah excusez-moi j'ai réglé mon problème, dans ma base de donnée ça affichait seulement
30 enregistrements, alors que j'en ai plus de 40 !
0