Bonjour,
Je ne sais pas si je suis dans la bonne section, je tente..
Je voudrais avoir votre avis sur mon code, car j'ai un soucis au moment de la suppression de plusieurs images, je vous explique.
J'ai un tableau sur ma page, avec le nom du fichier, un bouton supprimer et la possibilité de selectionner plusieurs lignes.... la suppression des lignes dans la BDD, et supprimer une seule image dans le dossier ne me pose pas de problème, ça marche, le soucis, c'est que par exemple si il y a 5 entrées dans mon tableau, et que je veux supprimer seulement 2 entrées, il me supprime quand même toute les images dans mon dossier.... :-/
Merci d'avance!
Voici mon code:
HTML:
JQUERY
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
17
18
19
20
21
22
23 <table> <?php foreach($result as $row) { $count = 1; ?> <tr class="row100 head" id="<?= $row['id']; ?>"> <td class="cell100 column1"><?= $row['id']; ?> - Leçons</td> <td class="cell100 column2"><a><?= $row['item_nom']; ?></a></td> <td class="cell100 column3"><a class='lien-pdf' target='_blank' href='<?= $row['item_url'] ?>'><i class="fas fa-cloud-upload-alt"></i></a></td> <td class="cell100 column4"> <label class='checkbox'> <input type='checkbox' name="customer_id[]" class="delete_customer" value="<?= $row['id']; ?>"> <span class='indicator'></span> </label> </tr> <input type="hidden" class="path" name="path" value="<?= $row['item_url']; ?>"> <?php $count++; } ?> </table>
PHP:
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
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 $(document).ready(function() { $("#btn_delete").click(function() { if(confirm("Etes vous sur de vouloir supprimer cette ligne ?")) { var id = []; var path = []; $(':checkbox:checked').each(function(i) { id[i] = $(this).val(); }); $('.path').each(function(i) { path[i] = $(this).val(); }); if(id.length === 0) { alert("Merci de séléctionner au moins une ligne !"); } else { $.ajax({ url: "delete.php", method: "POST", data:{id:id,path:path}, success:function(data) { for(var i=0; i<id.length; i++) { $("tr#"+id[i]+"").fadeOut("Slow"); } } }); } } else { return false; } }); });
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
17
18 <?php $bdd = new PDO ('mysql:host=localhost;dbname=amandineBDD;charset=utf8', 'root', ''); if(isset($_POST['id']) AND isset($_POST['path'])) { $path = $_POST['path']; foreach ($_POST['id'] as $id) { $sql = $bdd->prepare("DELETE FROM add_fichier WHERE id = '$id'"); $sql->execute(array($id)); } foreach($_POST['path'] as $path) { unlink($path); } } ?>
Partager