Bonjour,

J'ai un problème avec les boutons radios : je n'arrive pas à les contrôler en php (vérifier que l'utilisateur ai coché l'une des trois réponses : pour, contre ou sans opinion). Il s'agit de mon mémoire de recherche et je suis si débutant en php que je ne parviens pas encore à bien appliquer les solutions des problèmes des autres à mon problème!
Sachant que j'ai 3 fichiers liés (html, css et php), voici un exemple détaillé qui fini par la formulation d'une question en rapport
avec ma difficulté.

Un bout de code du questionaire en html:

<td> - Vous êtes :</td> 
<td><select name="Sexe"> 
<option value="">---</option> 
<option value="un homme">un homme</option> 
<option value="une femme">une femme</option> 
</select></td> 

L'équivalent en php:

$Sexe = $_POST['Sexe']; 
$Etude = $_POST['Etude']; 

 if(empty($Sexe))
            {
            echo(<b><i>Vous êtes...</i></b> EST VIDE.<br/>
	         <b>Veuillez retourner au questionnaire!</b></center>");
            exit();
            }

La réponse de Easyphp si l'utilisateur n'a pas validé: 
(à ce niveau, tout se passe comme je le souhaite)

Vous êtes... EST VIDE.
Veuillez retourner au questionnaire!


La suite du code en html (les fameux bontons radios):

<!-- Les lettres alphabétiques name="A", name="B",... représentent les différentes propositions -->

<th>Quelle position pourriez-vous prendre face aux propositions ci-dessous ?</th> <th>Pour</th>  <th>Contre</th> <th>Sans <br>opinion</th> </tr>

<tr>
<td>Encourager ... ne résout pas les problèmes...</td> <td> <input type="radio" name="A" value="Pour" id="Pour"></td> 
<td> <input type="radio" name="A" value="Contre" id="Contre"> </td> <td><input type="radio" name="A" value="Sans opinion" id="Sans opinion"></td>   </td></tr>
<tr>
<td>Le développement...</td> <td> <input type="radio" name="B" value="Pour" id="Pour"></td> 
<td> <input type="radio" name="B" value="Contre" id="Contre"> </td> <td><input type="radio" name="B" value="Sans opinion" id="Sans opinion"></td>   </td></tr>

Léquivalent en php:

           $A = $_POST['A'];
            if(empty($A))
            {
            echo(<b><i>Encourager ... ne résout pas les problèmes...</i></b> EST VIDE.<br/>
		 <b>Veuillez retourner au questionnaire!</b></center>");
            exit();


           $B = $_POST['B'];
            if(empty($B))
            {
            echo(<b><i>Le développement...</i></b> EST VIDE.<br/>
		 <b>Veuillez retourner au questionnaire!</b></center>");
            exit();

La réponse de Easyphp...:

Notice: Undefined index: A in c:\program files\easyphp1-8\www\op\reponse.php on line 120

Encourager ... ne résout pas les problèmes... EST VIDE.
Veuillez retourner au questionnaire!

Le problème que je n'arrive pas à résoudre est:
Comment faire disparaître uniquement cette ligne d'erreur (j'ai fait tout ce que j'ai pu
sans succès)?

Merci bien,
Modifié par alro (31 Oct 2007 - 19:45)
Bonjour,
Si aucune checkbox n'est cochée, $A n'est pas vide, il n'existe pas Smiley langue $B non plus d'ailleurs...
Utilise la syntaxe
if (isset($_REQUEST["A"])) 
plutôt que
           $A = $_POST['A'];
if(empty($A))

Si ta Checkbox n'existe pas : echo le reste est ok Smiley ravi
La même chose pour les autres checkboxes...
Modifié par gaelgerard (01 Nov 2007 - 00:08)