1 pièce(s) jointe(s)
Récupérer les données des champs cloner et les enregistrer dans table mysql
Bonjour,
En cliquant sur un bouton, J'arrive a cloné ou dupliqué le tr de mon tableau avec tous les champs input de type text.
Mon souci est de pouvoir enregistrer l données de chaque champs dans la table de presences qui est dans la bdd.
AIDEZ MOI SVP
voici un model
Pièce jointe 530802
Voici le code:
Code:
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 56 57 58 59 60 61 62 63
| <table class="table table-bordered">
<h5><strong>LISTE DE PRESENCE </strong></h5>
<hr>
<thead>
<tr>
<th scope="col">ENTREPRISE</th>
<th scope="col">NOM ET PRENOM</th>
<th scope="col">FONCTION</th>
<th scope="col">NUMERO PIECE DIDENTITE
</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row" colspan="">
<div class="form-group" id="01">
<input type='text' name="entreprise[]" class='form-control form-control-sm'>
</div>
</th>
<td><div class="form-group" id="01">
<input type='text' name="nomPrenom[]" class='form-control form-control-sm'>
</div>
</td>
<td><div class="form-group" id="01">
<input type='text' name="fonction[]" class='form-control form-control-sm'>
</div>
</td>
<td><div class="form-group" >
<input type='text' name="num_ident[]" class='form-control form-control-sm'>
</div>
</td>
</tr>
<tr class="d-none" id="dup">
<th scope="row" colspan="">
<div class="form-group">
<input type='text' name="entreprise[]" class='form-control form-control-sm'>
</div>
</th>
<td><div class="form-group">
<input type='text' name="nomPrenom[]" class='form-control form-control-sm'>
</div>
</td>
<td><div class="form-group">
<input type='text' name="fonction[]" class='form-control form-control-sm'>
</div>
</td>
<td><div class="form-group">
<input type='text' name="ident[]" class='form-control form-control-sm'>
</div>
</td>
</tr>
<tr>
<td colspan="4"><span>
<a href="#" class="btn btn-outline-primary btn-sm" id="btn">Ajouter une ligne</a></span></td>
</tr>
</tbody>
</table> |
Code:
1 2 3 4 5 6 7
| <script>
$('#btn').click(function(e) {
e.preventDefault();
var $clone = $('#dup').clone().attr('id', '').removeClass('d-none').appendTo('#01');
$('#dup').before($clone);
})
</script> |
3 pièce(s) jointe(s)
Enregistrer toutes les données de champs input dupliqué ou cloné avec JQuery dans MySQL avec PH
bonjour, j'ai d'aide,
J'ai un formulaire qui enregistre un rapport journalier d'un chantier,
dans ce formulaire il d'autres champs qui doit enregistrer les personnes qui sont présent au chantier
mais ceux-ci doivent être enregistrés dans une autre table (presences).
Les champs pour la table presences sont dupliqué avec JQuery tel le montre l'image ci-après:
Pièce jointe 531619
donc j'ai 2 tables dans ma base des données dont:
Pièce jointe 531627
Mon problème:
Quand je clic sur le bouton submit que le système enregistre les données de jnal_chantier,
en second lieu il enregistre les données de la table presences en tenant compte de la clé etrangere.
Voici ce que moi je tenter de faire mais je suis au bout.
(Juste la partie de la table presences parce que )
Code:
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 56 57 58 59 60 61 62
| <table class="table table-bordered">
<h5><strong>LISTE DE PRESENCE DE CHANTIER</strong></h5>
<hr>
<thead>
<tr>
<th scope="col">ENTREPRISE</th>
<th scope="col">NOM ET PRENOM</th>
<th scope="col">FONCTION</th>
<th scope="col">NUMERO PIECE DIDENTITE
</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row" colspan="">
<div class="form-group">
<input type='text' name="entreprise[]" class='form-control form-control-sm'>
</div>
</th>
<td><div class="form-group">
<input type='text' name="nomPrenom[]" class='form-control form-control-sm'>
</div>
</td>
<td><div class="form-group">
<input type='text' name="fonction[]" class='form-control form-control-sm'>
</div>
</td>
<td><div class="form-group" >
<input type='text' name="identite[]" class='form-control form-control-sm'>
</div>
</td>
</tr>
<tr class="d-none" id="dup">
<th scope="row" colspan="">
<div class="form-group">
<input type='text' name="entreprise[]" class='form-control form-control-sm'>
</div>
</th>
<td><div class="form-group">
<input type='text' name="nomPrenom[]" class='form-control form-control-sm'>
</div>
</td>
<td><div class="form-group">
<input type='text' name="fonction[]" class='form-control form-control-sm'>
</div>
</td>
<td><div class="form-group" >
<input type='text' name="identite[]" class='form-control form-control-sm'>
</div>
</td>
</tr>
<tr>
<td colspan="4"><span>
<a href="#" class="btn btn-outline-primary btn-sm" id="btn">Ajouter une ligne</a></span></td>
</tr>
</tbody>
</table> |
PHP
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
jnal_id = $db->quote($_GET['id']); // Id de la table jnal_chantie
$sql = "INSERT INTO presences (entreprise, nom_prenom, fonction, num_identite, jnal_id) VALUES (?,?,?,?,?)";
$stmt = $db->prepare($sql);
$stmt->bindParam(1, $entreprise);
$stmt->bindParam(2, $nom_prenom);
$stmt->bindParam(3, $fonction);
$stmt->bindParam(4, $num_identite);
$stmt->bindParam(5, $jnals_id);
$arr = $_POST;
foreach( $arr['entreprise'] as $i => $entreprise) // Boucle pour récupérer chaque informations saisie
{
$entreprise = $arr['entreprise'][$i];
$nom_prenom = $arr['nomPrenom'][$i];
$fonction = $arr['fonction'][$i];
$num_identite = $arr['identite'][$i];
$jnals_id = jnal_id;
// Exécution de la requête
$stmt->execute();
} |
Ce code enregistre bien les données dans la table presences mais la colonne jnal_id de la table presences est vide
et aussi il ya une ligne de plus dans la table qui vide. (voir l'image ci-dessous)
Pièce jointe 531623
Merci de votre aide!