Supprimer des données de la bdd en sql
Posté : 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
voilà la requete sql $clients
et voici mon code qui supprime dans la bdd
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 ?
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>
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();
Code : Tout sélectionner
$delete = $db->query("
DELETE FROM complet
WHERE id_client = $id_client
")->fetchAll();