Formulaire et php

Bonjour,

Je crée un formulaire dans une page hmtl et je veux que ce formulaire ait une action sur une page php. Jusque la c'est bon! Mais je veux que cette page php s'ouvre sur la même page que mon formulaire, juste en dessous...

Quelqu'un peut-il m'aider?
Merci!!!

9 réponses

  1. Bonjour lala. Je vais essayer de t'expliquer simplement. Tu verras, ceci n'est pas dur.

    Tu as un fichier nom.php.

    Dans ce fichier tu créer ton formulaire html avec:

    <form action="nom.php" method="post">  
     <!-- Ton Formlulaire -->  
    </form>


    ou

    <form action="nom.php" method="get">  
     <!-- Ton Formlulaire -->  
    </form>


    Je te conseil la première méthode, les POST ne sont pas modifiable par l'URL (Uniform Resource Locator => Adresse internet dans la barre en haut de ton navigateur) contrairement aux GET.
    Plus d'infos ici:
    https://openclassrooms.com/fr/courses/1603881-apprenez-a-creer-votre-site-web-avec-html5-et-css3

    Met simplement un input de type hidden (caché), avec name="verif" et value="ok" par exemple.

    Maintenant modifie de façon à avoir:
    <?php  
     if($_POST['verif']=="ok")  
     {  
    ?>  
      <!-- Ton affichage HTML lorsquer le formulaire est envoyé. -->  
    <?php  
     }  
     else  
     {  
    ?>  
      <form action="nom.php" method="post">  
       <!-- Ton Formlulaire -->  
       <input type="hidden" name="verif" value="ok" />  
      </form>  
    <?php  
     }  
    ?>
    1
    1. voila c'est ce que je voulais dire
      tu comprends lala?
      0
  2. crée des conditions:

    si ton $_POST est renseigné alors
    effectue ton code php lié au traitement du formulaire

    sinon

    tu raffiche le forumlaire
    0
    1. Oui mais cette solution m'oblige à recopier le formulaire sur une nouvelle page. Et je dois rester sur la même page...
      0
      1. non justement tu reste sur la même page :)
        tu redirige le post du formulaire vers celle ci et c'est la page qui détecte si elle doitafficher le formulaire ou traiter les infos
        0
        1. Ah je me corrige

          sinon

          tu raffiche le forumlaire

          en faite c'est tu affiche

          ainsi tu reste dans la meme page
          0
          1. en fait je comprend pas trop. Moi j'ai fait avec method="get". C'est ca le pb?
            0
            1. pas forcément dans ce cas mon code serait

              si ton $_GET est renseigné alors
              effectue ton code php lié au traitement du formulaire

              sinon

              tu affiche le forumlaire
              0
              1. au pire passe ton formulaire
                et ton code de traitement des données du formulaire
                0
                1. Alors je crée le formulaire: <form action="form_id.php" method="post">
                  Je le crée dans une page que j'ai nommé form_id.php et je fait l'action sur cette même page.

                  Je le marque ou ce qu'il doit s'afficher à l'exécution?
                  0