Formulaire POST

Siilny Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
jisisv Messages postés 3645 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
Je suis un débutant en php et comme tout débutant, je vais sur openclassroom.
Après avoir lu quelques cours je me suis décider à faire mon premier formulaire, il fonctionne parfaitement avec un Get mais dès que je le change en Post, j'ai une erreur lors du $_POST['pseudo'].

Voici mon code :
<HTML>
    <head>
        <title>Index</title>
        <meta charset="utf-8">
    </head>
    <body>
        <form method="post" action="">
            <input type="text" name="pseudo"/>
            <input type="submit" value="OK"/>
        </form>
        <?php
        if(isset($_POST['pseudo'])){
            echo $_POST['pseudo'];
        }else{
            echo"Erreur";
        }
        ?>
    </body>
</HTML>


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
A voir également:

3 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

1 - **** Attention ****
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

.
2 -

j'ai une erreur lors du $_POST['pseudo'].

Et quelle est l'erreur en question ?
0
Siilny Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Alors en fait je ne rentre jamais dans le if mais que dans le else, alors j'ai decider de faire
echo $_POST['pseudo']
.
J'obtient l'erreur : Undefined index:pseudo
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Essayes ceci :
<?php
//récupération "propre" des variables :
$pseudo = isset($_POST['pseudo']) ? $_POST['pseudo']: NULL;
?>
<html>
  <head>
    <title>Index</title>
    <meta charset="utf-8">
  </head>
  <body>
    <form method="post" action="">
      <input type="text" name="pseudo" value="<?php echo $pseudo;?>">
      <input type="submit" value="OK">
    </form>
  
  <?php
   //et éventuellement...
   if($pseudo){
    echo " vous avez choisi le pseudo : $pseudo";
   }else{
    echo "Aucun Pseudo choisi ou formulaire non validé";
   }
  
  ?>  
  </body>
</html> 
 


Cordialement, 
Jordane                                                                 
0
Siilny Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai toujours le même problème, $pseudo et toujours faux
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > Siilny Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Pas possible.
Je viens de tester et ça fonctionne très bien.
Tu as essayé MON code ?
Tu as bien renseigné qq chose puis cliqué sur le bouton submit ?
0
Siilny Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Oui oui j'ai tester j'ai fait un gros copier coller mais sa marche pas, peut-tu tester mon code s'il te plait pour voir si sa viens pas de mon installation ?
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > Siilny Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai testé mon code ... et il fonctionne parfaitement
0
jisisv Messages postés 3645 Date d'inscription   Statut Modérateur Dernière intervention   934
 
Effectivement , au premier chargement $_POST['pseudo'] n'est pas défini. Mais dès le renvoi du formulaire on ne passe plus par la deuxième branche du test. Ceci est normal. Jordane45 résout le problème.

Gates gave ^W  sold  you the windows.
GNU gave us the whole house.(Alexandrin)
0