Page 1 sur 1

Mettre le ISSET($_POST[]) dans une variable

Posté : 14 févr. 2008, 21:41
par Lolo509
Bonjour,

Voici mon problème : je n'arrive pas à stocker une condition avec le isset d'un $_POST dans une variable.


Ce code fonctionne :
if(isset($_POST['Field']))
{
...
}
Celui-ci ne fonctionne pas :
$isset = 'isset($_POST[\'Field\'])';
if($isset)
{
...
}
Est-ce normal et y a t'il un moyen de contourner le problème ?
Le but est d'utiliser une variable pour automatiser la condition

Merci

Mettre le ISSET($_POST[]) dans une variable

Posté : 14 févr. 2008, 21:54
par Lolo509
Je crois que c'est le $_POST[] qui n'aime pas être mis dans une variable (ça ne pose pas le problème si je je met juste le contenu du $_POST[] dans une variable

Ce code fonctionne :
$post = '\'Field\'';
if(isset($_POST[post]))
{
...
} 

Re: Mettre le ISSET($_POST[]) dans une variable

Posté : 14 févr. 2008, 21:58
par Truc
ça ne pose pas le problème si je je met juste le contenu du $_POST[] dans une variable
Non et c'est même préférable.
$post = 'Field'; // suffit
if(isset($_POST[$post])) // avec un $
EDIT :
J'ai supprimé l'autre message car tu as cliqué sur "nouveau" au lieu de "répondre"

Posté : 14 févr. 2008, 23:59
par zeus
Est-ce que tu veux stocker l'instruction ou le résultat de l'instruction dans ta variable ?

Parce que
$isset = 'isset($_POST[\'Field\'])';
if($isset)
est équivalent
$isset = 'isset($_POST[\'Field\'])';
if('isset($_POST[\'Field\'])')
Autrement dit "est-ce qu'une chaine vaut true".

Si tu veux stocker le résultat de l'instruction, il te suffit de faire
$isset = isset($_POST['Field']);
if($isset)
qui est équivalent à
if( isset($_POST['Field']) )

Posté : 15 févr. 2008, 17:11
par zeus
lolo509, il faut faire "Répondre", pas "Nouveau" ;)

Je recopie ta réponse ici, marque le sujet en tant que [Résolu] (pour pouvoir le faire, il faut t'inscrire ;) ) et supprime l'autre sujet
Je faisais un blocage sur les apostrophes.
Merci pour tes conseils, ça fonctionne.
$isset = isset($_POST['Field']);
if($isset)