Bonjour à tous
Voici mon soucis :
explication
-> J'ai fais une Boucle pour afficher les resultats d'une requete.
-> Puis une seconde boucle dans la boucle (oui je sais ce n'est pas propre)
-> L'utilisateur peut ajouter autant d'emails qu'il le desire
-> Ce qui me donne :
[Tableau 1]
Donnée 1
Donnée 2
Donnée 3
--------- [Email]
------------- Email 1
------------- Email 2
------------- Email 3
[Fin Tableau 1]
Problematique :
L'utilisateur peut rajouter autant de mail qu'il veut.
(donc pour reprendre l'exemple ci dessus, ca fera : email 4, email 5 ...)
Si j'ai 2 tableaux qui s'affichent (pour donner un exemple concret) et que je veux ajouter des emails, ca s'ajoute que dans le tableau 1.
(Je sais que le conne que j'ai fais n'est pas forcement propre.
J'essaie juste de comprendre pourquoi les valeurs vont automatiquements dans la premier tableau.)
Ma question :
Comment faire pour que les emails s'ajoutent bien dans le tableau concerné ?
Voici mon code :
Et l'appel du code Javascript/Jquery :
Je pense que tout simplement je n'indique pas de quel tableau il s'aggit, donc il ajoute automatiquement dans le premier tableau, mais je sais pas comment lui dire lol.
Merci beaucoup beaucoup pour votre aide
Modifié par lecourtier (13 Mar 2008 - 15:24)

Voici mon soucis :
explication
-> J'ai fais une Boucle pour afficher les resultats d'une requete.
-> Puis une seconde boucle dans la boucle (oui je sais ce n'est pas propre)
-> L'utilisateur peut ajouter autant d'emails qu'il le desire
-> Ce qui me donne :
[Tableau 1]
Donnée 1
Donnée 2
Donnée 3
--------- [Email]
------------- Email 1
------------- Email 2
------------- Email 3
[Fin Tableau 1]
Problematique :
L'utilisateur peut rajouter autant de mail qu'il veut.
(donc pour reprendre l'exemple ci dessus, ca fera : email 4, email 5 ...)
Si j'ai 2 tableaux qui s'affichent (pour donner un exemple concret) et que je veux ajouter des emails, ca s'ajoute que dans le tableau 1.
(Je sais que le conne que j'ai fais n'est pas forcement propre.
J'essaie juste de comprendre pourquoi les valeurs vont automatiquements dans la premier tableau.)
Ma question :
Comment faire pour que les emails s'ajoutent bien dans le tableau concerné ?
Voici mon code :
<?php for ($i=0; $tableau_email[$i]; $i++){
echo '<br />';
list($infoprimaire, $alias_protected) = explode("[", $tableau_email[$i]);
list($nom_protected, $prenom_protected, $email_protected) = explode("-", $infoprimaire);
$liste_alias = explode(",", $alias_protected);
$nb_alias = count ($liste_alias);
$z=(($i)+1);
echo'<FIELDSET><LEGEND align=top>Email '.$z.'</LEGEND>';
echo '<table>';
echo '<tr>
<td>Nom</td>
<td><label>
<input type="text" value="'.$nom_protected.'" name="nom_protected_'.$i.'" id="nom_protected" />
</label></td>
</tr>
<tr>
<td>Prénom</td>
<td><label>
<input type="text" value="'.$prenom_protected.'" name="prenom_protected_'.$i.'" id="prenom_protected" />
</label></td>
</tr>
<tr>
<td>Email</td>
<td><label>
<input type="text" value="'.$email_protected.'" name="email_protected_'.$i.'" id="email_protected" />
</label>
</td>
</tr> <tr>';
for ($g=0; $liste_alias[$g]; $g++){
$h=(($g)+1);
echo '<tr><td>Alias '.$h.'</td><td><input name="alias_'.$i."_".$g.'" type="text" value="'.$liste_alias[$g].'" /></td></tr>';
};
echo '</tr>';
echo '<tr id="tableau2">';
echo '</tr>';
echo '<tr><td><A Href="javascript:create()"><span id="test77">ajouter alias</span</A> </td></tr>';
echo '</table>';
echo '</fieldset>';
echo '</legend>';
}
?>
Et l'appel du code Javascript/Jquery :
<script>
var valeur = document.forms['test'].elements['nb_alias'].value;
var depart = 1;
var nbligne = parseInt(valeur) - parseInt(depart);
function nouvelleligne(nbligne){
$("#test77").fadeOut("slow");
var depart2 = 1;
var test = parseInt(nbligne) + parseInt(depart2);
return '<tr name="'+ nbligne +'" onclick="ajouterligne($(this));">' +
'<td>Alias ' + test +'</td>' +
'<td><input value="" name="alias_'+ nbligne +'" type="text" /></td>' +
'</tr>';
}
// on creé la première ligne
function create(){
var nouvelle_ligne = nouvelleligne(nbligne);
$(nouvelle_ligne).prependTo("#tableau2");
}
function ajouterligne(ligne){
// Si c'est la derière ligne
if(ligne.attr('name') == nbligne){
// On insert la nouvelle ligne
nbligne ++;
var nouvelle_ligne = nouvelleligne(nbligne);
$(nouvelle_ligne).insertAfter(ligne);
// on change la variable nbligne et on l'affiche
$("#result").html("nb ligne = " + nbligne);
}
}
</script>
Je pense que tout simplement je n'indique pas de quel tableau il s'aggit, donc il ajoute automatiquement dans le premier tableau, mais je sais pas comment lui dire lol.
Merci beaucoup beaucoup pour votre aide

Modifié par lecourtier (13 Mar 2008 - 15:24)