Forum d'entraide PHPFrance

Venez poser vos questions PHP, MySQL, HTML, CSS, Javascript, Gestion de serveurs à la communauté PHPfrance

Vers le contenu

» Masquer les résultats de la recherche

Recherche dynamique PHPfrance

  1. Effectuez une recherche, les résultats s'afficheront dynamiquement ici.

un formulaire dynamique ?

Pour les initiés, les confirmés, les experts, les gourous... voire plus.

un formulaire dynamique ?

Messagepar yannouff 05 Fév 2012, 16:23

Bonjour a tous,

contexte :
J'ai un formulaire, contenant 4 entrées simple. et un bouton "autres" qui DEVRAIS ajouter a chaque fois que je clique sur ce bouton, un champs supplémentaire !
de base, il y a 4 champs,
si je clique, apparaît un 5eme,
si je re-clique, un 6eme
etc ...

mais je ne sais pas trop comment m'y prendre ! Auriez vous une suggestion a me faire ? ou une méthode pk pas ? :)
yannouff
 

Publicité

Re: un formulaire dynamique ?

Messagepar Blowingfish 06 Fév 2012, 03:44

Ce n'est pas du PHP qu'il te faut ici, c'est du JavaScript(Je ne pense pas que PHP est capable de faire ça) :

<script>
    function add_input()
    {
        var element = document.createElement("input");
       
        element.setAttribute("type", "text");
        element.setAttribute("name", "nom");
     
        var input_target = document.getElementById("target");
        input_target.appendChild(element);
    }
</script>

<form>
    <input type="text"/><br/>
    <span id="cible"></span>
    <br/>
    <input type="button" value="add" onclick="add_input();"/>
</form>


Par contre, je ne sais pas comment ajouter un saut de ligne après chaque input, du coup ils s'affichent tous en ligne, mais je suis sûr que tu es déjà plus prêt de ton but ;)

Si tu as besoin que je te l'explique, tu n'as qu'a demander.
Blowingfish
Maitre du phpinfo()
 
Messages: 34
Inscription: 30 Juil 2011, 05:56
Localisation: Québec, Canada

Re: un formulaire dynamique ?

Messagepar moogli 06 Fév 2012, 13:19

attention au nom du champ, il faut utiliser la notation tableau pour récupérer une tableau ensuite.

par exemple
<input type="text" name="autre[]" /> et dans la validation $_POST['autre'] (si method="post") est un tableau avec un élément par input existant.

@+
Il en faut peu pour être heureux ......
moogli
ViPHP
ViPHP
 
Messages: 3698
Inscription: 06 Juil 2006, 17:23
Localisation: gwened bzh

Re: un formulaire dynamique ?

Messagepar Blowingfish 07 Fév 2012, 01:25

Blowingfish a écrit:Ce n'est pas du PHP qu'il te faut ici, c'est du JavaScript(Je ne pense pas que PHP est capable de faire ça) :

<form>
    <input type="text"/><br/>
    <span id="cible"></span>
    <br/>
    <input type="button" value="add" onclick="add_input();"/>
</form>



Désolé, j'ai fait une erreur dans le forumulaire, le id "cible" est en réalité "target". De plus, tu peux peut-être changer le span pour un div pour créer un saut de ligne après chaque formulaire.


moogli a écrit:attention au nom du champ, il faut utiliser la notation tableau pour récupérer une tableau ensuite.

par exemple
<input type="text" name="autre[]" /> et dans la validation $_POST['autre'] (si method="post") est un tableau avec un élément par input existant.

@+


Il est probablement possible de faire une variable javascript qui s'incrémente qui donnerait des noms comme "input_1", "input_2", etc. Quoi que la façon que Moogli propose est probablement mieux que la mienne.

Voici un exemple avec cette variable :

<script>
    var input_nbr = 1;

    function add_input()
    {
        var element = document.createElement("input");
       
        element.setAttribute("type", "text");
        element.setAttribute("name", "input_"+input_nbr);
     
        var input_target = document.getElementById("target");
        input_target.appendChild(element);

        input_nbr++;
    }
</script>
Blowingfish
Maitre du phpinfo()
 
Messages: 34
Inscription: 30 Juil 2011, 05:56
Localisation: Québec, Canada

Re: un formulaire dynamique ?

Messagepar moogli 07 Fév 2012, 11:51

le problème de l'input_truc c'est de devoir gérer le "truc" hors ce n'est pas toujours simple ^^, l'avantage du tableau c'est que tu utilise un simple foreach ;)


@+
Il en faut peu pour être heureux ......
moogli
ViPHP
ViPHP
 
Messages: 3698
Inscription: 06 Juil 2006, 17:23
Localisation: gwened bzh


Retourner vers PHP avancé

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 13 invités

  • Publicité