Comment supprimer des lignes à l'aide de cases à cocher en php et mysql
P粉982009874
2023-09-01 22:02:23
<p>J'ai créé un tableau avec les informations de la base de données et j'ai essayé de créer des cases à cocher pour pouvoir supprimer des lignes plus facilement, mais quelque chose ne fonctionne pas. </p>
<p>J'ai un bouton avec un formulaire : </p>
<pre class="brush:php;toolbar:false;"><form action="delete-register.php" method="post">
<type de bouton="bouton" class="btn btn-primary"><span class="fe fe-file-plus fe-12 mr-2"></span>Nouveau</ bouton>
<type de bouton="soumettre" nom="supprimer" classe="btn btn-secondaire"><span class="fe fe-trash fe-12 mr-2"></span> ;Supprimer</bouton>
</form></pre>
<p>J'ai des lignes avec des cases à cocher : </p>
<pre class="brush:php;toolbar:false;"><form action="delete-register.php" method="post">
<td>
<div class="custom-control custom-checkbox">
<type d'entrée="case à cocher" class="entrée de contrôle personnalisée" id="<?php echo $row['id'] ?" nom="sélectionné[]" value="<?php echo $row['id'] ?>">
<classe d'étiquette="étiquette-de-contrôle-personnalisée" pour="<?php echo $row['id'] ?"></label>
</div>
</td>
</form></pre>
<p>Également delete-register.php : </p>
<pre class="brush:php;toolbar:false;">if (isset($_POST['delete'])) {
if (isset($_POST['selected'])) {
foreach ($_POST['selected'] comme $id) {
$query = "DELETE FROM enregistre WHERE id = $id";
mysqli_query($conn, $query);
}
header('Emplacement : registres.php');
sortie;
}
}</pré>
<p>Le problème est que "sélectionné" est toujours vide, donc rien n'est supprimé de la base de données.
Comment puis-je résoudre ce problème? </p>
Veuillez noter que les données soumises entreront dans le cadre de
<form>....</form>
Puisque vous disposez de deux formulaires, lorsque vous cliquez sur le bouton Soumettre dans le premier formulaire, les données du deuxième formulaire ne seront pas envoyées au serveur.
Alors changez le deuxième formulaire par :
[Explication supplémentaire]
Si vous souhaitez vous en tenir au premier formulaire pour déclencher la suppression alors merci :
id=form2
dans le 2ème formulaire afin de faciliter le déclenchement de la soumission par form1Voici le code modifié :