par
minwolf999 » 06 mai 2023, 11:07
Bonjour, voilà j'ai un programme qui m'affiche une liste de client dans un tableau en fonction de s'il on leurs carte de fidélité qui est complète. Cependant, j'aimerais faire en sorte que lorsqu'un client possède plusieurs carte de complète je puisse en supprimer le nombre que je veux. Et c'est là que je bloque car avec mon niveau actuelle j'arrive uniquement à supprimer toutes les cartes d'un seul coup.
voilà la structure du tableau
Code : Tout sélectionner
<form method="post" name="validerclient">
<div class="container">
<table class="styled-table">
<thead>
<tr>
<th>Nom</th>
<th>Prénom</th>
<th>Téléphone</th>
<th>Mail</th>
<th>Quantiter</th>
<th>Supprimer</th>
<th></th>
</tr>
</thead>
<tbody>
<?php if($clients != ""): ?>
<?php foreach ($clients as $client): ?>
<tr>
<td><?= $client['nom'] ?></td>
<td><?= $client['prenom'] ?></td>
<td><?= $client['phone'] ?></td>
<td><?= $client['mail'] ?></td>
<td><?= $client['id_client'] ?></td>
<td><input type="submit" value="Supprimer" name="supprimer"></td>
<td><input type="hidden" name ="client_id" value="<?= $client['id'] ?>" ></td>
</tr>
<?php endforeach; ?>
<?php endif; ?>
</tbody>
</table>
</div>
</form>
voilà la requete sql $clients
Code : Tout sélectionner
$clients = $db->query("
SELECT c.id, c.nom, c.prenom, c.phone, c.mail, COUNT(a.id_client) as id_client
FROM client c
LEFT JOIN complet a ON a.id_client = c.id
WHERE a.id_client != ''
GROUP BY c.nom
")->fetchAll();
et voici mon code qui supprime dans la bdd
Code : Tout sélectionner
$delete = $db->query("
DELETE FROM complet
WHERE id_client = $id_client
")->fetchAll();
je suppose qu'il faut que je passe par l'id des carte complètes mais je ne sais pas comment les placer dans le tableaux donc avez vous une solution à me proposer ?
Bonjour, voilà j'ai un programme qui m'affiche une liste de client dans un tableau en fonction de s'il on leurs carte de fidélité qui est complète. Cependant, j'aimerais faire en sorte que lorsqu'un client possède plusieurs carte de complète je puisse en supprimer le nombre que je veux. Et c'est là que je bloque car avec mon niveau actuelle j'arrive uniquement à supprimer toutes les cartes d'un seul coup.
voilà la structure du tableau
[code]
<form method="post" name="validerclient">
<div class="container">
<table class="styled-table">
<thead>
<tr>
<th>Nom</th>
<th>Prénom</th>
<th>Téléphone</th>
<th>Mail</th>
<th>Quantiter</th>
<th>Supprimer</th>
<th></th>
</tr>
</thead>
<tbody>
<?php if($clients != ""): ?>
<?php foreach ($clients as $client): ?>
<tr>
<td><?= $client['nom'] ?></td>
<td><?= $client['prenom'] ?></td>
<td><?= $client['phone'] ?></td>
<td><?= $client['mail'] ?></td>
<td><?= $client['id_client'] ?></td>
<td><input type="submit" value="Supprimer" name="supprimer"></td>
<td><input type="hidden" name ="client_id" value="<?= $client['id'] ?>" ></td>
</tr>
<?php endforeach; ?>
<?php endif; ?>
</tbody>
</table>
</div>
</form>
[/code]
voilà la requete sql $clients
[code]
$clients = $db->query("
SELECT c.id, c.nom, c.prenom, c.phone, c.mail, COUNT(a.id_client) as id_client
FROM client c
LEFT JOIN complet a ON a.id_client = c.id
WHERE a.id_client != ''
GROUP BY c.nom
")->fetchAll();
[/code]
et voici mon code qui supprime dans la bdd
[code]
$delete = $db->query("
DELETE FROM complet
WHERE id_client = $id_client
")->fetchAll();
[/code]
je suppose qu'il faut que je passe par l'id des carte complètes mais je ne sais pas comment les placer dans le tableaux donc avez vous une solution à me proposer ?