![](/img/trans.png)
[英]How to delete multiple rows from mysql database with checkbox using PHP?
[英]Delete multiple rows using checkbox from mysql table using PHP
我希望通過復選框選中它們時刪除一行或多行。 但是,即使我選擇,它似乎也不會刪除任何內容。
這是我想出的:
<?php
$con=mysqli_connect("localhost","root","","annualdb");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM asean_japan WHERE agency='Air'");
if(isset($_POST['delete'])) {
$checkbox = $_POST['checkbox'];
for($i=0;$i<count((array)$checkbox);$i++) {
$del_id = $checkbox[$i];
$sql = "DELETE FROM asean_japan WHERE id='$del_id'";
$result = mysqli_query($con,$sql);
}
// if successful, refresh same page
if($result) {
echo "<meta http-equiv=\"refresh\" content=\"0;URL=index.php\">";
}
}
?>
<table class='page'>
<tr>
<th>Select</th>
<th>Agency</th>
<th>FileName</th>
<th>FileType</th>
<th>Date Received</th>
<th>Action</th>
</tr>
<?php
while($row = mysqli_fetch_array($result))
{
?>
<tr>
<td align='center' bgcolor='#FFFFFF'><input name='checkbox[]' type='checkbox' value='<?php echo $row['id']; ?>'></td>
<td><?php echo $row['agency']; ?></td>
<td><?php echo $row['filename']; ?></td>
<td><?php echo $row['filetype']; ?></td>
<td><?php echo $row['date']; ?></td>
<td><a target='_blank' href='../annual/indicators/" <?php echo $row['filename']; ?>"'>OPEN</a></td>
</tr>
</table>
<?php
}
?>
<tr>
<td colspan="4" align="center" bgcolor="#FFFFFF"><input name="delete" type="submit" value="Delete"></td>
</tr>
<?php
mysqli_close($con);
?>
我的復選框或input = delete是否有問題?
首先,您需要在while循環外關閉表格標簽,然后需要檢查onclick數據發布或不定位目標網址, 請點擊此處,這將對您有所幫助
foreach($_POST['checkbox'] as $key =>$val) { if($val!='') { $sql = "DELETE FROM asean_japan WHERE id='$val'"; $result = mysqli_query($con,$sql); } }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.