Résolu [PHP]Envoyer en POST une donnée (hors formulaire)

Statut
N'est pas ouverte pour d'autres réponses.

Wazau

ʇûoɐ ǝznop
Premium
Inscription
12 Août 2012
Messages
1 281
Réactions
283
Points
20 278
RGCoins
65
Bonjour,
Me voici devant un problème...

Je n'arrive pas à envoyer une variable $_POST à mon autre page.

Je m'explique, j'ai un formulaire qui me permet d'envoyer les données reçus à mon autre page grâce à une méthode de type post
(Exemple : $_POST['mail'], $_POST['captcha'])

Néanmoins, j'ai besoin d'envoyer par la même occasion une autre valeur à cette même page et ce de manière "cacher" (donc impossible ici d'utiliser un $_GET)
(Exemple : $_POST['captchaCorrect])

Lorsque je clique sur valider (le input de type submit), je recois bien sur l'autre page les données contenues dans $_POST['mail'] et $_POST['captcha'] mais pas celle de $_POST['captchaCorrect'].


Une idée ?

Quelques bouts de code :

PHP:
<form method="post" action="nompage.php?id=',$_GET['UnevariablequisetransmetbienparGet'],'">',
                '<input type="text" placeholder="Captcha" name="captcha" id="captcha" required />',
                '<input type="email" placeholder="Mail" name="mail" id="mail" value="',$_POST['mail'],'" required />',
                '<input type="checkbox" name="condition" value="condition" required /><label for="condition">J\'accepte les <a href="http://google.com">conditions générales</a></label>',
                '<input type="submit" name="submit" id="submit" value="Valider">',
</form>
PHP:
  if (! isset($_POST['submit'])) {
      // On est dans un premier affichage de la page.
      // => On intialise les zones de saisie.
      $_POST['mail'] = '';
      $_POST['captcha'] = '';
      $_POST['captchaCorrect'] = 'correct';
  }
  else {
      // On est dans la phase de soumission du formulaire :
      // => vérification des valeurs reçues 
    echo 'A',$_POST['mail'],'B';  -------------------------------------------------------> S'affiche correctement
    echo 'A',$_POST['captcha'],'B';  --------------------------------------------------> S'affiche correctement
    echo 'A',$_GET['UnevariablequisetransmetbienparGet'],'B';  --------> S'affiche correctement
    echo 'A',$_POST['captchaCorrect'],'B';  ---------------------------------------> Inconnu.
 
Salut,

Peut-être parce-que le champ captchaCorrect n'existe pas ?

Ajoute

<input type="hidden" name="captchaCorrect" value="cc">

et ça marchera, par contre c'est pas top de mettre la valeur attendue de son captcha directement dans l'HTMl
 
Pourquoi pas une variable ? Car si ta pas un input avec NAME="CaptchaCorrect" la fonction POST ne marchera pas.
 
Cette réponse a aidé l'auteur de cette discussion !
Statut
N'est pas ouverte pour d'autres réponses.
Retour
Haut