Forum Programmation.php Problème avec isset()

Posté par  (site web personnel) .
Étiquettes : aucune
0
15
mar.
2005
Le code :
if (isset($_POST)) {
echo 'ben ouais mon gars c'est set';
}
else {
echo 't vnr c\'est unset';
}

me répond systématiquement que la variable est initialisée alors que justement elle ne devrait pas l'être.... Etant débutant en php une bricole a du m'échapper ....

Merci !
  • # Pour etre gentil

    Posté par  . Évalué à 3.

    d'abord la partie, je suis gentil, ca me fait une excusepourpas faire autre chose:

    essaye d'abord sur des variables du genre toto.
    J'ai fait trés peu de php, mais ca resseble enormement a une variable du langage et donc toujours la.

    ensuite, comme j'aime etre précis j'ai fait ce que tu aurais du faire:
    STFW -> RTFM
    qui donne au bout de, hmmm, 3 minutes :
    http://www.php.net/manual/en/language.variables.predefined.php

  • # variable globale

    Posté par  (site web personnel) . Évalué à 2.

    $_POST est une variable "superglobale" systématiquement initialisé en PHP [1]. Si tu veux vérifier que des valeurs ont été postées tu peux tester avec empty() ou faire un count() de $_POST puisque c'est tableau.

    [1] http://fr2.php.net/manual/fr/reserved.variables.php#reserved.variab(...)

    https://damien.pobel.fr

    • [^] # Re: variable globale

      Posté par  . Évalué à 0.

      Cela correspond peut-être plus à tes attentes :




      Comme indiqué à très juste titre au dessus, $_POST existera toujours vu que c'est une variable pré défini, par contre tu peux tester son contenu, donc si c'est une variable précise

      if( isset( $_POST['NomVariableATester'] ) ) {
      // traitement
      }

      sinon la fonction count pour voir si le tableau est vide t'aidera sûrement si tu souhaites juste tester le fait que quelqu'un envoi des données post alors que tu n'attends rien.

      if( isset( count($_POST ) ) {
      // traitement
      }

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.