Beim Löschen mehrerer Zeilen aus einer MySQL-Datenbanktabelle mit PHP erfordert das Auswählen von Links mithilfe von Kontrollkästchen eine sorgfältige Codierung sorgen für eine erfolgreiche Durchführung. Dieses Code-Snippet bietet eine Lösung für ein häufiges Problem:
<code class="php"><html> <head> <title>Links Page</title> </head> <body> <h2>Choose and delete selected links.</h2> <?php $dbc = mysqli_connect('localhost','root','admin','sample') or die('Error connecting to MySQL server'); $query = "select * from links ORDER BY link_id"; $result = mysqli_query($dbc,$query) or die('Error querying database'); $count=mysqli_num_rows($result); ?> <table width="400" border="0" cellspacing="1" cellpadding="0"> <tr> <td> <form name="form1" method="post" action=""> <table width="400" border="0" cellpadding="3" cellspacing="1" bgcolor="#CCCCCC"> <tr> <td bgcolor="#FFFFFF"> </td> <td colspan="3" bgcolor="#FFFFFF"> <strong>Delete multiple links</strong> </td> </tr> <tr> <td align="center" bgcolor="#FFFFFF">#</td> <td align="center" bgcolor="#FFFFFF"> <strong>Link ID</strong> </td> <td align="center" bgcolor="#FFFFFF"> <strong>Link Name</strong> </td> <td align="center" bgcolor="#FFFFFF"> <strong>Link URL</strong> </td> </tr> <?php while ($row=mysqli_fetch_array($result)) { ?> <tr> <td align="center" bgcolor="#FFFFFF"> <input name="checkbox[]" type="checkbox" value="<?php echo $row['link_id']; ?>"> </td> <td bgcolor="#FFFFFF"> <?php echo $row['link_id']; ?> </td> <td bgcolor="#FFFFFF"> <?php echo $row['link_name']; ?> </td> <td bgcolor="#FFFFFF"> <?php echo $row['link_url']; ?> </td> </tr> <?php } ?> <tr> <td colspan="4" align="center" bgcolor="#FFFFFF"> <input name="delete" type="submit" value="Delete"> </td> </tr> </table> </form> </td> </tr> </table> <?php // Check if delete button active, start this if(isset($_POST['delete'])) { $checkbox = $_POST['checkbox']; for($i=0; $i<count($checkbox); $i++) { $del_id = $checkbox[$i]; $sql = "DELETE FROM links WHERE link_id='$del_id'"; $result = mysqli_query($dbc, $sql); // Pass the database connection here } // if successful redirect to view_links.php if($result){ echo '<meta http-equiv="refresh" content="0;URL=view_links.php">'; } } mysqli_close($dbc); ?> </body> </html></code>
Die Lösung:
Mit diesen Änderungen sollte der Code mehrere Zeilen basierend auf den ausgewählten Kontrollkästchen korrekt löschen.
Das obige ist der detaillierte Inhalt vonWie lösche ich mehrere Zeilen mithilfe von Kontrollkästchen in PHP: Häufige Fehler beheben und eine erfolgreiche Ausführung sicherstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!