Majid Ansari Majid Ansari - 7 months ago 25
SQL Question

How can I delete records using checkbox in php?

Need to delete records and Here is my code:

<input type="submit" name="delete" value="delete"/>
<?php
if(isset($_POST['delete']))
{
$cnt=array();
$cnt=count($_POST['chkbox']);
for($i=0;$i<$cnt;$i++)
{
$del_id=$_POST['chkbox'][$i];
$query="DELETE FROM menu_detail WHERE vt_id=".$del_id;
mysql_query($query);
}
}
?>
// I draw checkboxes using this where as I m fetching data from table...
<?php
$col = "row0"; $i = 0; $a=1;
while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) {
if ($i == 0) { $col = "row0"; $i = 1; } else { $col = ""; $i = 0; }
?>
<tr class="<?php echo $col; ?>">
<td>
<input type="checkbox" name="chkbox" value="checkbox[<?php echo $row['vt_id']?>]" />
</td>


Look at the image will give you an idea where I am stuck

enter image description here

Answer

Take a look

       $tableRow = array("id","name","code"): // assume It must from Database

         <form action="your_action.php"  method="post" id="bulkDel" >

       <table>
               <thead>
                      <th><input type="checkbox" id="checkAll" /></th>
                      <th>....</th> <!--and so on-->
              </thead>
           <?php
                 foreach($tableRow as $row){
                       ?>
                     <tr>
                           <td> <input tyep="checkbox"  name="check[]" /></td>
                           <td>.....</td> <!-- and so on --> 
                     </tr>

                  <?php

                 }
            ?>

      </table>
      <a href="javascript:void(0);"id="bulkDeleteBut" >Delete selected</a>
   </form>

  // jquery check all checkboxes

  $(document).on('click','#checkAll',function(){
                    $('input[name="check[]"]').prop('checked',$(this).is(":checked"));
  });


 $(document).on('click','#bulkDeleteBut',function(){
             var len = $('input[name="check[]"]')..serializeArray().length;
             if(len>0){
                     $('#bulkDel').submit();
             }else{
              alert("Check atleast one record");
            } 
 });


 // server side php
   if(isset($_POST['check'])){
       $ar = $_POST['check'];
        foreach($ar as $primary_key){
             // perform mysql delete query and return back to table page
        }
   }