How to delete multiple records in PHP

CREATE TABLE `tblusers` ( `id` int(11) NOT NULL, `FullName` varchar(140) DEFAULT NULL, `Education` varchar(120) DEFAULT NULL, `postingDate` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; ALTER TABLE `tblusers` ADD PRIMARY KEY (`id`); ALTER TABLE `tblusers` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1; Fetch the data from the database and create checkbox . Checkbox name attribute is an array.
<table class="table table-striped custab">
        <!-- Deletion Button -->
        <tr>
           <td colspan="4">  <input type="submit" name="submit" value="Delete" class="btn btn-primary btn-md pull-left" onClick="return confirm('Are you sure you want to delete?');" ></td>
        </tr>
 <tr>
    <th>
<!-- For Selecting All -->
     <li><input type="checkbox" id="select_all" /> Select all</li></th>
    <th>Name</th>
    <th>Education   </th>
    <th>Date</th>
 </tr>
<?php
$query=mysqli_query($con,"select * from tblusers");
$totalcnt = mysqli_num_rows($query);
if ($totalcnt > 0) {
while ($row=mysqli_fetch_array($query)) {
?>
<tr>
<td><input type="checkbox" class="checkbox" name="ids[]" value="<?php echo htmlentities($row['id']);?>"/></td>
<td><?php echo htmlentities($row['FullName']);?></td>
<td><?php echo htmlentities($row['Education']);?></td>
<td><?php echo htmlentities($row['postingDate']);?></td>
</tr>
<?php } } else { ?>
<tr>
<td  colspan="4"> No Record Found</td>
</tr>
<?php } ?>
</table>
On Submitting the from collect all checkbox ids and implode their ids
if (isset($_POST["submit"])) {
    if (count($_POST["ids"]) > 0 ) {
        // Imploding checkbox ids
        $all = implode(",", $_POST["ids"]);
        $sql =mysqli_query($con,"DELETE FROM tblusers WHERE id in ($all)");
        if ($sql) {
            $errmsg ="Data has been deleted successfully";
        } else {
            $errmsg ="Error while deleting. Please Try again.";
        }
    } else {
        $errmsg = "You need to select atleast one checkbox to delete!";
    }
}
HERE IS THE FULL CODE THAT WE HAVE WRITTEN DURING THIS TUTORIAL :
<?php
include('dbconfig.php');
error_reporting(0);
if (isset($_POST["submit"])) {
if (count($_POST["ids"]) > 0 ) {
// Imploding checkbox ids
$all = implode(",", $_POST["ids"]);
$sql =mysqli_query($con,"DELETE FROM tblusers WHERE id in ($all)");
if ($sql) {
$errmsg ="Data has been deleted successfully";
} else {
$errmsg ="Error while deleting. Please Try again.";
}
} else {
$errmsg = "You need to select atleast one checkbox to delete!";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta name="description" content="How to delete multiple record in PHP">
<meta name="keywords" content="How to delete multiple record in PHP">
<meta name="author" content="Anuj Kumar">
<title>How to delete Multiple Data in PHP</title>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<style type="text/css">
.custab{
border: 1px solid #ccc;
padding: 5px;
margin: 5% 0;
box-shadow: 3px 3px 2px #ccc;
transition: 0.5s;
}
.custab:hover{
box-shadow: 3px 3px 0px transparent;
transition: 0.5s;
}
li {
list-style-type: none;
}
</style>
</head>
<body>
<form name="multipledeletion" method="post">
<div class="container">
<div class="row col-md-6 col-md-offset-2 custyle">
<h2>How to delete Multiple Record in PHP</h2>
<!-- Message -->
<p style="color:red; font-size:16px;">
<?php if($errmsg){ echo $errmsg; } ?> </p>
<table class="table table-striped custab">
<!-- Deletion Button -->
<tr>
<td colspan="4"> <input type="submit" name="submit" value="Delete" class="btn btn-primary btn-md pull-left" onClick="return confirm('Are you sure you want to delete?');" ></td>
</tr>
<tr>
<th>
<!-- For Selecting All -->
<li><input type="checkbox" id="select_all" /> Select all</li></th>
<th>Name</th>
<th>Education </th>
<th>Date</th>
</tr>
<?php
$query=mysqli_query($con,"select * from tblusers");
$totalcnt = mysqli_num_rows($query);
if ($totalcnt > 0) {
while ($row=mysqli_fetch_array($query)) {
?>
<tr>
<td><input type="checkbox" class="checkbox" name="ids[]" value="<?php echo htmlentities($row['id']);?>"/></td>
<td><?php echo htmlentities($row['FullName']);?></td>
<td><?php echo htmlentities($row['Education']);?></td>
<td><?php echo htmlentities($row['postingDate']);?></td>
</tr>
<?php } } else { ?>
<tr>
<td colspan="4"><a href="rollback.php"> Roll back all data</a></td>
</tr>
<tr>
<td colspan="4"> No Record Found</td>
</tr>
<?php } ?>
</table>
</div>
</div>
</form>
<script type="text/javascript">
$(document).ready(function(){
$('#select_all').on('click',function(){
if(this.checked){
$('.checkbox').each(function(){
this.checked = true;
});
}else{
$('.checkbox').each(function(){
this.checked = false;
});
}
});
$('.checkbox').on('click',function(){
if($('.checkbox:checked').length == $('.checkbox').length){
$('#select_all').prop('checked',true);
}else{
$('#select_all').prop('checked',false);
}
});
});
</script>
</body>
</html>
[sdm_download id="8816" fancy="1"] ]]>

Anuj Kumar

This is Anuj Kumar. I’m a professional web developer with 4+ year experience. I write blogs in my free time. I love to learn new technologies and share with others.
I founded PHPGurukul in September 2015. The main aim of this website to provide PHP, Jquery, MySQL, PHP Oops and other web development tutorials.
.

Recommended Tutorials for you

Add comment

Follow us

Don't be shy, get in touch. We love meeting interesting people and making new friends.