Bonjour,
J'ai créée un tableau auquel on peut ajouter dynamiquement des lignes lorsque l'on clique sur un bouton. J'ai fais cela en javascript.
Chaque ligne du tableau comporte 2 champs de texte à remplir : motif_intervention et description_intervention.
Le tableau est contenu dans un formulaire d'insertion.
Le problème est que lorsque je veux insérer un enregistrement, il n'insère que la dernière ligne du tableau. Je ne vois pas comment je peux faire pour qu'il insère plusieurs lignes.
Les tables de ma base de données en relation avec ce tableau sont la table intervention et la table détail intervention. La table detail_intervention a comme champ id_detail, id_intervention, motif_intervention et description_intervention.
Voila le code du script java :
Le code du tableau auquel je rajoute les lignes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function inserligne() { var newRow = document.getElementById("table").insertRow(-1); var newCell = newRow.insertCell(0); newCell.innerHTML = '<input name="motif_intervention" type="text" id="motif_intervention" maxlength="60" size="30">'; newCell = newRow.insertCell(1); newCell.innerHTML = '<textarea name="description_intervention" cols="30" rows="4" id="description_intervention"></textarea>'; }
Et le code ma requête sql pour insérer :
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 <table width="355" id="table"> <tr valign="baseline"> <td width="206" height="44" align="right" nowrap class="textnormalgras"><div align="left"><span class="rouge">*</span> Motif :<br><span class="commentaire">(60 caractères maximum )</span> </div> </td> <td width="137" height="44" align="right" valign="top" nowrap class="textnormalgras"><div align="left"><span class="rouge">*</span> Description :</div> </td> </tr> <tr><input type="hidden" name="id_detail" value=""> <td><input name="motif_intervention" type="test" id="motif_intervention" maxlength="60" size="30"> </td> <td><textarea name="description_intervention" cols="30" rows="4" id="description_intervention"></textarea><br/> </td> </tr> </table> <input type="button" name="ajoute" value="+" onClick="inserligne()">
Je précise que le tableau est dans un formulaire et qu'il y a une autre requête avant celle-ci qui insère dans la table intervention.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $insertSQL2 = "INSERT INTO detail_intervention (id_detail, id_intervention, motif_intervention, description_intervention) VALUES ('".$_POST['id_detail']."', LAST_INSERT_ID(), '".$_POST['motif_intervention']."', '".$_POST['description_intervention']."')"; $Result2 = mysql_query($insertSQL2, $aloa) or die(mysql_error());
Je ne sais pas si je suis claire dans mes explications, mais ce n'est pas évident à expliquer.
J'espère que quelqu'un aura une solution pour moi!
Partager