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

Langage PHP Discussion :

formulaires dynamiques et variables vers php


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 40
    Points : 21
    Points
    21
    Par défaut formulaires dynamiques et variables vers php
    Voilà mon code :
    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
     
    <script language ="javascript">
    var mon_div = null;
    var nouveauDiv = null;
     
    var Div = null;
    var num = 0;
     
    function ajouteElement()
    {
    nouveauDiv = document.createElement("div");
    x=document.getElementById("filtres").value;
    var divhtml = '';
    for(compteur=0;compteur<x;compteur++)
      {
      num++;
      divhtml += "<br><br><input type='text' id='filtres"+num+"' size='20'>";
      }
     
    nouveauDiv.innerHTML = divhtml;
      mon_div = document.getElementById("org_div1");
      document.body.insertBefore(nouveauDiv, mon_div);
    }
     
    </script>
    <input type="text" id="filtres" size="20"><a href="javascript:;" onClick="ajouteElement()">valider</a>
    <div id="org_div1"></div>
    </form>
    Ce code me permet de générer des champs dynamiquement par rapport à une valeur donnée dans un champ sans rechargement de la page. Serait-il possible de récupérer les données entrées dans les champs nouvellement créés peu importe le nombre de champs générés et tout ça en php.

    Merci d'avance

  2. #2
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    tu peux récupérer les valeurs à la réception du formulaire. mais pour cela il te faudra aussi utiliser l'attribut "name" dans tes champs input pour pouvoir utiliser les $_post ou $_get en fonction de la manière dont tu gère l'envoi de ton form.

    à cela je pense qu'il serai bon dans ta fonction javascript d'incrémenter une variable mise dans un champs hidden et envoyé en même dans ton formulaire. Cela te permettra à la réception de ce dernier de bouclé sur le nombre total d'élément généré.
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 40
    Points : 21
    Points
    21
    Par défaut
    Ok, mais comment se présentent les variables de mes champs générés de façon à ce que puisse les réutiliser dans mon script php et j'aurais besoin stp, d'un exemple pour l'utilité de la variable qui s'incrémente j'ai déjà fait ça pour donner un id différents à chacun de mes champs (filtres 1,2,3 ....).

  4. #4
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    Par défaut
    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
     
    <script language ="javascript">
    var mon_div = null;
    var nouveauDiv = null;
     
    var Div = null;
    var num = 0;
     
    function ajouteElement()
    {
    nouveauDiv = document.createElement("div");
    x=document.getElementById("filtres").value;
    var divhtml = '';
    for(compteur=0;compteur<x;compteur++)
      {
      num++;
      divhtml += "<br><br><input type='text' id='filtres"+num+"' name="filtres[]" size='20'>";
      }
     
    nouveauDiv.innerHTML = divhtml;
      mon_div = document.getElementById("org_div1");
      document.body.insertBefore(nouveauDiv, mon_div);
    }
     
    </script>
    <form action="get" action="tonscript.php">
    <input type="text" id="filtres" size="20"><a href="javascript:;" onClick="ajouteElement()">valider</a>
    <div id="org_div1"></div>
    </form>
    dans tonscript.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <?php
     
    //voir les éléments transmis
    if( isset( $_GET['filtres'] ) )
       print_r( $_GET['filtres'] );
    Développeur | Zend Certified Engineer

    Étapes Pour mieux se servir du forum:
    1. Commencez par lire les cours et tutoriels ;
    2. Faites une recherche;
    3. Faites un post si rien trouvé dans les deux étapes précédentes en respectant les règles;

    Nix>_Rien n'est plus pratique que la théorie

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    comme Thes32.
    Tant qu'à faire, autant relier l'id au name (même num) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      divhtml += '<br /><br /><input type="text" id="filtres'+num+'" name="filtres['+num+']" size="20" />'."\n";
    (en évitant de se prendre les pieds dans le tapis avec les " et ')

    ps : il ne serait pas plus judicieux de créer les input avec le DOM comme ici ?

  6. #6
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    Bonjour,
    comme Thes32.
    Tant qu'à faire, autant relier l'id au name (même num) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      divhtml += '<br /><br /><input type="text" id="filtres'+num+'" name="filtres['+num+']" size="20" />'."\n";
    (en évitant de se prendre les pieds dans le tapis avec les " et ')
    ici ?
    je ne vois pas l’intérêt des indices, à mon avis c'est plus flexible.
    Développeur | Zend Certified Engineer

    Étapes Pour mieux se servir du forum:
    1. Commencez par lire les cours et tutoriels ;
    2. Faites une recherche;
    3. Faites un post si rien trouvé dans les deux étapes précédentes en respectant les règles;

    Nix>_Rien n'est plus pratique que la théorie

  7. #7
    Invité
    Invité(e)
    Par défaut
    Tu avais un cafouillage de " ' dans ton code.

    Après, chacun fait à sa mode.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 40
    Points : 21
    Points
    21
    Par défaut
    Merci à tous j'ai utilisé DOM la semaine dernière et tout fonctionne nickel et le code est super lisible en plus

    Et oui en effet j'avais aussi cafouillé avec le ' et ".

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

Discussions similaires

  1. [AJAX] $.post variable vers PHP
    Par Toolito dans le forum jQuery
    Réponses: 2
    Dernier message: 06/10/2012, 07h01
  2. formulaire dynamique, conception j'hésite PHP / AJAX /JS
    Par xavioche77 dans le forum Langage
    Réponses: 13
    Dernier message: 31/03/2011, 13h00
  3. Auto submit + variable js vers php via formulaire
    Par ketsueki dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 03/11/2009, 16h27
  4. Variables vers PHP
    Par cocacola0589 dans le forum Flex
    Réponses: 27
    Dernier message: 21/04/2009, 16h30
  5. [DOM] Passage de variable vers PHP
    Par popovitch130 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 05/07/2008, 22h13

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