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 :

Incrémenter les name d'un formulaire dans une boucle


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 60
    Par défaut Incrémenter les name d'un formulaire dans une boucle
    Hello à tous,

    Je début en php et je me suis lancer dans un projet pour apprendre sur du concret. Mais je suis bloquer...
    voilà la situation.
    J'ai une page1.php pour que l'utilisateur entre dans un champs texte le nombre de formulaire à remplir.
    on arrive sur une page2.php ou le nombre de formulaire est définie par la variable $nb_ics (ce que l'utilisateur à choisit dans la page prcédente).
    Jusqu'à là, pas de soucis. Mes X formulaire apparraisse bien en fonction de $nb_ics.

    Pour que ça marche, j'ai fais ça :


    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
     
    <form method="post" action="insert_move_ics.php" onSubmit='return valider_formulaire(this)'>
    <?
    ///boucle de configuration d'affichage du nombre de formulaire en fonction du nom sélectionné dans move_ics.php
    $i = 0;
    while ($i < $nb_ics) {
    ?>
     
    Le formulaire
     
    <? //fin de la boucle de configuration d'affichage du nombre de formulaire en fonction du nom sélectionné dans move_ics.php
        $i++;
    }
    ?>
    <input type="hidden" name="nb_ics" value="<? echo $nb_ics; ?>" >
    <input type="submit" value="valider" >


    Il y a 1 seul form, et 1 seul sumit, mais plusieurs champs nom, prénom...
    Le prob est que je doit pouvoir incrémenter les name:"" de ces champs pour pouvoir dans ma page3.php les inserer dans la bdd.
    Est ce que qu'elqu'un pourrais m'aider à m'en sortir?

    Merci d'avance,
    +
    DaD

    PS : je vous mets aussi le formuaire qui est dans ma boucle :

    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
     
    <table width="100%"  border="0" cellspacing="10" cellpadding="0" class="textenoir">
      <tr>
        <td>Centre  d'o&ugrave; provient l'ICS <em>(ou nom du vendeur en cas de d&eacute;pot perso)</em> * : </td>
        <td><input type="text" name="centre_from"></td>
      </tr>
      <tr>
        <td>Ville dans laquelle ce trouve ce centre * : </td>
        <td><input type="text" name="ville_from"></td>
      </tr>
      <tr>
        <td>Centre  o&ugrave; &agrave; &eacute;t&eacute; d&eacute;pos&eacute; l'ICS <em>(ou nom du vendeur en cas de d&eacute;pot perso)</em>  * : </td>
        <td><input type="text" name="centre_to"></td>
      </tr>
      <tr>
        <td>Ville dans laquelle ce trouve ce centre * : </td>
        <td><input type="text" name="ville_to"></td>
      </tr>
      <tr>
        <td>R&eacute;f&eacute;rence article : </td>
        <td><input name="code_article" type="text" size="7" maxlength="7"></td>
      </tr>
      <tr>
        <td>Num&eacute;ro de s&eacute;rie * : </td>
        <td><input name="serial" type="text" size="8" maxlength="8"></td>
      </tr>
      <tr>
        <td>Num&eacute;ro du bon de transport : </td>
        <td><input name="bon_transport" type="text" id="bon_transport"></td>
      </tr>
    </table>
      <table width="100%"  border="0" cellspacing="10" cellpadding="0" class="textenoir">
        <tr>
          <td><div align="center">* : Champs obligatoires </div></td>
        </tr>
      </table><br>
     <hr>
    +
    DaD

  2. #2
    Membre éclairé Avatar de H-bil
    Inscrit en
    Février 2006
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 337
    Par défaut
    salut
    tu peux a chaque fois concaténer le name de ton champs avec le $i
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $nom="centre_from".$i
    <input type="text" name="<?php echo $nom ; ?>">
    @+

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 60
    Par défaut
    Merci de ta réponse...

    et si je mets ça, je me retrouve avec des variable de cette forme dans la page suivante :

    $nom01
    $nom02
    $nom03

    si il y a 3 formulaire, c'est ça?

  4. #4
    Membre éclairé Avatar de H-bil
    Inscrit en
    Février 2006
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 337
    Par défaut
    dans la page insert_move_ics.php, si nb_ics egale à 3, tu auras :
    centre_from1 , ville_from1, centre_to1 ..........
    centre_from2, ville_from2, centre_to2 ..........
    centre_from3, ville_from3, centre_to3 ..........
    @+

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 60
    Par défaut
    Merci beaucoups H bil, tu me retire une grosse épine du pied...
    je n'ai pas encore acquis le type de raisonnement qu'il faut pour développer, du coups, je galerre sur des trucs qui sont apparement simple pour les developpeur expérimenter....
    enfin ça viendra....

    Merci encore.
    +
    DaD

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 60
    Par défaut
    Je t'embete encore un peu, H-Bil,

    mais je n'arrive pas à récupérer mes variables...

    Voilà ce que j'ai mis dans ma boucle :

    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
     
    <form method="post" action="temp.php" onSubmit='return valider_formulaire(this)'>
    <?
    ///boucle de configuration d'affichage du nombre de formulaire en fonction du nom sélectionné dans move_ics.php
    $i = 0;
    $centre_from="centre_from".$i;
    $ville_from="ville_from".$i;
    $centre_to="centre_to".$i;
    $ville_to="ville_to".$i;
    $code_article="code_article".$i;
    $serial="serial".$i;
    $bon_transport="bon_transport".$i;
    while ($i < $nb_ics) {
    ?>
    <table width="100%"  border="0" cellspacing="10" cellpadding="0" class="textenoir">
      <tr>
        <td>Centre  d'o&ugrave; provient l'ICS <em>(ou nom du vendeur en cas de d&eacute;pot perso)</em> * : </td>
        <td><input type="text" name=="<?php echo $centre_from ; ?>"></td>
      </tr>
      <tr>
        <td>Ville dans laquelle ce trouve ce centre * : </td>
        <td><input type="text" name=="<?php echo $ville_from ; ?>"></td>
      </tr>
      <tr>
        <td>Centre  o&ugrave; &agrave; &eacute;t&eacute; d&eacute;pos&eacute; l'ICS <em>(ou nom du vendeur en cas de d&eacute;pot perso)</em>  * : </td>
        <td><input type="text" name=="<?php echo $centre_to ; ?>"></td>
      </tr>
      <tr>
        <td>Ville dans laquelle ce trouve ce centre * : </td>
        <td><input type="text" name=="<?php echo $ville_to ; ?>"></td>
      </tr>
      <tr>
        <td>R&eacute;f&eacute;rence article : </td>
        <td><input name=="<?php echo $code_article ; ?>" type="text" size="7" maxlength="7"></td>
      </tr>
      <tr>
        <td>Num&eacute;ro de s&eacute;rie * : </td>
        <td><input name=="<?php echo $serial ; ?>" type="text" size="8" maxlength="8"></td>
      </tr>
      <tr>
        <td>Num&eacute;ro du bon de transport : </td>
        <td><input name=="<?php echo $bon_transport ; ?>" type="text" id="bon_transport"></td>
      </tr>
    </table>
      <table width="100%"  border="0" cellspacing="10" cellpadding="0" class="textenoir">
        <tr>
          <td><div align="center">* : Champs obligatoires </div></td>
        </tr>
      </table><br>
     <hr>
    <? //fin de la boucle de configuration d'affichage du nombre de formulaire en fonction du nom sélectionné dans move_ics.php
        $i++;
    }
    ?>

    J'ai router ça, comme tu le vois vers un fichier temp.php pour tester si je retrouve bien mes variable...
    voilà le code de temp.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    <?
    echo $_POST['nb_ics'],'<br>';
    echo $_POST['centre_from1'],'<br>';
    echo $_POST['centre_from2'],'<br>';
    echo $_POST['centre_from3'],'<br>';
    ?>
    Quand j'execute, il me dit qu'il ne trouve pas les variables :

    3

    Notice: Undefined index: centre_from1 in c:\program files\easyphp1-8\www\biotronik\temp.php on line 10


    Notice: Undefined index: centre_from2 in c:\program files\easyphp1-8\www\biotronik\temp.php on line 11


    Notice: Undefined index: centre_from3 in c:\program files\easyphp1-8\www\biotronik\temp.php on line 12


    tu vois ce qui cloche? j'ai mal formuler un truc?

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

Discussions similaires

  1. Récupérer les champs d'un formulaire dans une jsp
    Par lalyly dans le forum Struts 1
    Réponses: 1
    Dernier message: 19/04/2007, 10h50
  2. Réponses: 7
    Dernier message: 18/01/2007, 15h03
  3. Copier les valeurs d'un formulaire dans une table
    Par Cyphen dans le forum Access
    Réponses: 4
    Dernier message: 19/06/2006, 10h45
  4. Comment recuperer les info d'un formulaire dans une boite de dialogue
    Par frutix dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 31/05/2006, 11h42
  5. Afficher les élements d'un formulaire dans une autre fenetre
    Par BernardT dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 11/12/2005, 22h52

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