IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Plusieurs FORMS dans la meme page


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Homme Profil pro
    Consultant - Webmarketing
    Inscrit en
    Avril 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant - Webmarketing
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2013
    Messages : 25
    Par défaut Plusieurs FORMS dans la meme page
    Bonjour,
    Je suis en train de créer un outil de gestion de BDD sous PDO.
    Problème c'est que je coince sur un truc aussi simple que la gestion de plusieurs FORMS dans la même page.
    En fait, au travers de la saisie dans plusieurs FORMS, avec des champs SELECT, cela me permet d'afficher l'ensemble des tables et de sélectionner d'abord la table à gérer, puis un 2ème FORM me permet de faire à l'identique avec les colonnes, etc
    Problème, c'est que dès que j'ai validé l'INPUT du 2ème FORM, cela m'efface non seulement l'affichage du 2ème FORM, mais aussi les variables du 1er FORM.
    Pour vous permettre de comprendre, j'ai fait un exemple très simple, au travers duquel, vous pourrez mieux comprendre mon problème.
    Votre aide me serait préceuse, vu le temps que j'ai déjà passé sur un truc qui paraît aussi simple.
    Comme je ne suis pas encore un habitué de ce forum, si vous jugez qu'il faut déplacer mon message, vous voudrez bien m'en informer.
    Un grand merci à ceux qui voudront bien me donner une solution.

    Raphaël
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    <?php 
    $table = (isset($_POST['table_envoi'])) ? $_POST['table'] : '';
    $col = (isset($_POST['col_envoi'])) ? $_POST['col'] : '';
     
    echo '<b>Exemple d\'utilisation multi-forms</b>'.'<br /><br />';
    //== FORM de saisie du nom de la table ==
        echo "<form method='POST' action='input.php' ><br />";
        echo "Sélectionnez une table : ";
        echo "<input type='text' name='table' value='".$table."'/>";
        echo "<input type='submit' name='table_envoi' value=' Valider ' ><br />";
        echo 'Table sélectionnée : '.$table.'<br />';    
        echo "</form>";
     
    if (isset($_POST['table_envoi'])) {
        if (!empty($table)) {  
        //== FORM de saisie du nom de la colonne de la table ==
            echo "<form method='POST' action='input.php' ><br />";
            echo "Sélectionnez une colonne : ";
            echo "<input type='text' name='col' value='".$col."'/>";
            echo "<input type='submit' name='col_envoi' value=' Valider ' ><br />";
            echo 'Colonne sélectionnée : '.$col.'<br />';    
            echo "</form>";
        } 
    }
     
    //== Résultats obtenus ==
    if (!empty($col)) {  //== j'attends la saisie du 2ème champ pour afficher les résultats ==
        echo '<br /><br />';
        echo '<b>Résultat des opérations </b>:'.'<br />';
        echo 'Table sélectionnée : '.$table.'<br />';  
        echo 'Colonne sélectionnée : '.$col.'<br />';  
        echo '<br /><br /><br />';
        echo '<b>CONSTAT </b>:'.'<br />'; 
        echo '1.- Le FORM de saisie du champ colonne disparaît, alors que je souhaiterais qu\'il reste affiché'.'<br />';
        echo '2.- La valeur de la table (1er champ de saisie) a été effacée'.'<br />';
    }
    ?>

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2013
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 45
    Par défaut
    Bonjour,

    Plusieurs solutions.

    1) Tu soumets ton formulaire à travers une requête ajax, la réponse ne modifiant que la "partie" de la page que tu souhaites.

    2) Tu passes tout dans le même formulaire (ils ont l'air de renvoyer sur la même action), que tu construis au fur et à mesure et en fonction de ce que tu reçois de ta précédente soumission.

    3) Tu continues avec tes multiples formulaires, mais tu passes les valeurs dans des hidden à chacun de tes formulaires, comme ça, lorsque tu en soumets un, toutes les données (précédemment postées) sont postées à nouveau.

    4) Vu ce que tu veux faire, la meilleur solution me semble être d'utiliser des listes déroulantes liées entre-elles ou encore ici

    Selon la solution que tu préfères, je te recommande quand même dans la mesure du possible soit de séparer ton html de ton php, soit de concaténer une chaine pour l'afficher ensuite, plutôt que de poser tous ces echos au fur et à mesure.

    Bon courage.

  3. #3
    Membre averti
    Homme Profil pro
    Consultant - Webmarketing
    Inscrit en
    Avril 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant - Webmarketing
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2013
    Messages : 25
    Par défaut RE: Plusieurs FORMS dans la meme page
    Merci pour ta réactivité et la qualité des exemples fournis.
    Je vais donc étudier ces différents exemples, très bien documentés par ailleurs.
    Donc, si j'ai bien compris, mes constatations au sujet des FORMS, ne sont que les limites atteintes par cette méthode.

    Encore merci,

    Raphaël

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Plusieurs h:form dans la meme page
    Par amariasoft dans le forum JSF
    Réponses: 8
    Dernier message: 19/05/2009, 12h56
  2. Multiple <html:form> dans la meme page
    Par Leopardi dans le forum Struts 1
    Réponses: 17
    Dernier message: 21/09/2007, 15h03
  3. prb avec la touche entrée et plusieurs submit dans la meme page
    Par nsdcrew dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 21/08/2007, 10h30
  4. appel de plusieurs .js dans la meme page
    Par nicerico dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 18/01/2007, 09h13
  5. [STRUTS] Plusieurs actions dans une meme page
    Par DarkWark dans le forum Struts 1
    Réponses: 22
    Dernier message: 10/01/2006, 16h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo