[FORMULAIRE PHP] récupération des variables

Bonjour, j'ai un petit problème pour récupérer les données d'un formulaire, j'ai fait quelque chose de très simple pour tester, voici le code du formulaire:

<form name="form_site" method="POST" action="post_form.php">
<td><input type="text" name="reponse"></td>
<td><select name="liste">
<option>choix 1</option>
<option>choix 2</option>
<option>choix 3</option>
<option>choix 4</option>
</select></td>
<td><input type="submit" name="valider" value="Valider"></td>
</form>

et voici le fichier de récupération des données: "post_form.php":

<?
{
print "$_POST['reponse'], $_POST['liste']";
}
?>

Je voulais à la base que les données me soient envoyées par mail grâce à la fonction "mail", mais j'ai réduit le code au maximum afin de comprendre le problème.

Dans cette configuration, l'affichage de "post_form.php" donne une page blanche, sans message d'erreur.

Je suis hébergé chez Zarcrom qui m'a confirmé que les variables globales sont désactivées, d'où l'utilisation de la synthaxe du type "$_POST['toto']"

Je ne comprends pas d'où peut venir mon probleme, merci par avance pour votre aide.

Ben.

10 réponses

  1. Essaie peut-être de sortir les tableaux d'entre les ""

    print $_POST["reponse"], .", ".$_POST["liste"];

    Parfois, php n'arrive pas bien à évaluer ces valeurs.

    Si ça ne marche toujours pas, à la première ligne de
    post_form.php

    fait un print_r($_POST);

    comme ça, tu verras ce qu'il recoit. Et tu permettras de voir si tu n'as pas perdu tes valeurs en cours de route ou si une condition n'a pas été réalisée pour afficher tes valeurs.
    0
    1. si ca ne fonctionne pas, tu peux essayer de sortir le <form> du tableau:

      <form ....>
      <table>
      <tr><td>...

      </table>
      </form>
      0
      1. heu tu n'aurais pas oublié le parametre value dans tes <option>?

        <option value="pouet">tûttût</option>
        :o)
        0
        1. Je crois que ce n'est pas obligatoire.
          Si la value n'est pas renseignée, ça prend ce qu'il y a dans les balises option
          0
      2. Merci pour la rapidité de vos réponses, je vais tester immédiatement.
        0
        1. Puniase, ça marche, il m'a suffit d'enlever les "", par contre lorsque j'essaye d'envoyer les données avec la fonction mail, la page affichée est de nouveau blanche.

          Voici la synthaxe que j'utilise:

          mail(****@****.com","Formulaire", "Réponse: $_POST['reponse'], $_POST['liste'], "From: ****@****.com\nReply-To: ****@****.com");

          je ne sais pas si je peux enlever les " dans ce cas là?
          0
          1. Oui, pareil. Enlève les :

            mail(****@****.com","Formulaire", "Réponse: ".$_POST['reponse'].", ".$_POST['liste'].", "From: ****@****.com\nReply-To: ****@****.com");

            une autre solution consiste à les entourer des {}
            {$_POST['reponse']}

            ....

            ou ${_POST['reponse']}

            ??? oO

            Je m'en rappelle plus :-p
            0
            1. Je suis désolé, je n'y arrive pas pinaise, peux-tu me donner la synthaxe exacte s'il te plait concernant la fonction mail?
              0
              1. C'est bon, ça fonctionne! Merci encore pour votre aide.

                Ben.
                0