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

jQuery Discussion :

Différencier les clones


Sujet :

jQuery

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2019
    Messages : 4
    Par défaut Différencier les clones
    Bonjour,
    je voudrais avoir de l'aide pour un formulaire qui permet de créer un fichier XML bref,
    le problème est que je n'arrive pas à différencier les clones en js que je fais, est-il possible de changer le nom quand on clone un éléments ??

    voici le code ehtml :
    Code html : 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
    <body>
    <form method="POST" action="php/script.php">
    	<div class="bloc" id="first" >
    		<div>
    			<div class="ligne" style="display:none;"> 			
    				<input type="text" name="nom"     placeholder="Nom de la Personne">
    				<input type="tel"  name="nbr_tel" placeholder="Numéro de Téléphone">
     
    				<button type="button" onclick="Supprimer(this);"> Supprimer </button>
    			</div>
    			<div class="ligne"> 			
    				<input type="text" name="nom"     placeholder="Nom de la Personne">
    				<input type="tel"  name="nbr_tel" placeholder="Numéro de Téléphone">
     
    				<button type="button" onclick="Supprimer(this);"> Supprimer </button>
    			</div>
     
    			<button type="button" onclick="Ajouter();" style="visibility: visible;"> Ajouter </button><br><br>
    			<input type="text" name="nom_fichier" placeholder="Nom du Fichier"><span>.xml</span> 
     		</div><br>
     
    		<button type="submit" class="vld">Génerer le XML</button>
    	</div><br><br>
    </form>

    ensuite le JS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    var nbr_lignes = 0;
     
    function Supprimer(moins){
    	nbr_lignes--;
            $(moins).parent().remove();//supprimer le parrent 
    }
     
    function Ajouter(){
    	nbr_lignes++;
            $('#first').find(".ligne").last()
                    .after($('#first').find(".ligne").first().clone("$(nbr_lignes)").show());
    }
    et pour finir le PHP :
    Code php : 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
    <?php
     
    // récuperation des informations et initialisation des variables
    $nom = $_POST['nom']; 
    $nbr_tel = $_POST['nbr_tel'];
    $nom_fichier = $_POST['nom_fichier']; 
     
    $monfichier = fopen("../phonebook/$nom_fichier.txt", 'x');
    $fichiername = $nom_fichier;
     
    $contenu_fichier = 
     
    "<YealinkIPPhoneDirectory>
    	<DirectoryEntry>
    		<Name>".$nom."</Name>
    		<Telephone>".$nbr_tel."</Telephone>
    	</DirectoryEntry> 
    </YealinkIPPhoneDirectory>";
     
    fputs($monfichier, $contenu_fichier);
     
    fclose($monfichier);
     
    echo '<meta name="viewport" content="width=device-width, initial-scale=1.0"><p>Fichier créé avec succés ! <a href="../index.html">Retour en arrière</a> </p>';
     
    ?>

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    Bonjour et bienvenue sur DVP.

    Met les name sous forme de tableau
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="text" name="nom[]" placeholder="Nom de la Personne">
    <input type="tel"  name="nbr_tel[]" placeholder="Numéro de Téléphone">
    et côté serveur tu les récupères dans une boucle.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2019
    Messages : 4
    Par défaut
    Merci pour votre réponse mais je ne vois pas très bien ou je dois faire la boucle juste pour les "nom" et je le mets dans un array ou dans une boucle avec foreach ??

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    Je ne comprends pas bien le sens de ton interrogation, c'est côté serveur que tu dois boucler sur les paramètres récupérés.

    Quelque chose comme :
    Code php : 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
    <?php
    $data = $_POST;
    $nb = count($data["nom"]);
    for ($i = 0; $i < $nb; $i += 1) {
      $nom = $data["nom"][$i];
      $tel = $data["tel"][$i];
      $buffer = "
      <YealinkIPPhoneDirectory>
        <DirectoryEntry>
          <Name>".$nom."</Name>
          <Telephone>".$tel."</Telephone>
        </DirectoryEntry>
      </YealinkIPPhoneDirectory>";
      echo $buffer;
    }
    ?>
    c'est à adapter à ton besoin et il y aurait bien sûr des tests à faire.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    ou :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    foreach ($_POST['nom'] as $i => $val )
    {
      $nom = $_POST['nom'][$i]; // équivalent à $val
      $tel = $_POST['tel'][$i];
    ...
    }
    ?>

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 16/01/2007, 21h34
  2. Comment faire pour montrer les procédures qui démarrent ave
    Par zoltix dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 07/02/2006, 08h12
  3. Réponses: 4
    Dernier message: 05/01/2006, 09h01
  4. Réponses: 2
    Dernier message: 23/11/2005, 16h30
  5. Réponses: 2
    Dernier message: 13/11/2005, 18h03

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