[RESOLU] if isset ??

Eléphant du PHP | 150 Messages

09 août 2014, 16:37

bonjour quant je met ceci:

formulaire :
<label>Sexe :<span class="obligatoire">*</span></label>
<select class="choix" name="sexe" required>
<option>Choisir...</option>
<option>M</option>
<option>F</option>
</select>
verification
$sexe =$_POST['sexe'] ;

if (isset($sexe)=="M"){echo "vous ete un homme";}else{echo "vous ete une femme";}
sa me retourne toujours vous ete un homme quel que soit le sexe

et pourtant la variable $sexe change parfaitement


merci pour votre aide

ViPHP
ViPHP | 1996 Messages

09 août 2014, 19:59

Bonjour,

la fonction isset() permet de vérifier si la variable est définie (= "is set" = "est définie")

Dans ton cas, c'est toujours var donc toujours "vous êtes un homme"
$sexe =$_POST['sexe'] ;
if (isset($sexe)=="M"){echo "vous êtes un homme";}else{echo "vous êtes une femme";}
Mais si tu veux tester la variable voilà ce qu'il faut faire :
$sexe =$_POST['sexe'] ;
if (isset($sexe) && $sexe =="M"){echo "vous êtes un homme";}else{echo "vous êtes une femme";}
Bon dans ton cas, il faudrait plutôt tester si la variable est vide ou non plutôt que si elle est définie (car tu la définie plus haut) puis vérifier le sexe :
$sexe =$_POST['sexe'] ;
if (!empty($sexe))
	if ($sexe =="M")
		{echo "vous êtes un homme";}
	else
		{echo "vous êtes une femme";}
else
	echo "information sexe non existante";
Enfin pour finir, tu peux utiliser les conditions tertiaire pour le fun :
$sexe =$_POST['sexe'] ;
if (!empty($sexe))
	echo ($sexe =="M")? "vous êtes un homme" : "vous êtes une femme";
else
	echo "information sexe non existante";
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Eléphant du PHP | 150 Messages

09 août 2014, 21:24

merci beaucoup pour ton aide et ton expliquation " tres utile "