douhuan6157 2018-08-10 07:33
浏览 77
已采纳

使用多个复选框从wordpress数据库中删除多个记录

I created a customer table in Wordpress database that name "tblvessel". The code below select the records from the database and display the records as a table with the "checkbox" on each records, and also assign the record's 'ID' to each the "checkbox" value.

I want user able to delete multiple records from wordpress database by checking the 'checkbox'.

<div class="container" style="padding-left: 0">
    <table class="table table-bordered">
        <thead>
            <tr>
                <th></th>
                <th>ETA</th>
                <th>Vessel type</th>
                <th>Vessel</th>             
                <th>Flag</th>
                <th>Origin</th>
                <th>Destination</th>
                <th>Arrival/Departure</th>
                <th>Remark</th>
                <th>User</th>
            </tr>
        </thead>
        <tbody>
            <?php
            global $wpdb;
            $today  =   date('Ymd');

            $todayuploads = $wpdb->get_results ( "SELECT * FROM tblvessel WHERE upload_date = $today ORDER BY date DESC, type, vessel, av_dp ASC" );

            foreach ( $todayuploads as $todayupload )   {

                $id = $todayupload->id;
                ?>
                <tr>
                    <td><input type="checkbox" name="vschbox[]" value="<?php echo $id; ?>"></td>
                    <td><?php echo date_format(date_create($todayupload->date), 'd/m/Y' ); ?> <?php echo $todayupload->eta_etd; ?></td>
                    <td>
                        <?php 
                        $conv_type = $todayupload->type;
                        switch ($conv_type) {
                            case 1:
                               echo "Container Barges";
                               break;
                            case 2:
                               echo "General Cargo Barges";
                               break;
                            case 3:
                               echo "Tourist Vessel";
                               break;
                            case 4:
                               echo "Motor Tanker";
                               break;                           
                            default:
                                echo "Invalid Vessel Type";
                        }
                        ?>                      
                    </td>
                    <td><?php echo $todayupload->vessel;?></td>
                    <td><?php echo $todayupload->flag;?></td>
                    <td><?php echo $todayupload->origin;?></td>
                    <td><?php echo $todayupload->destination;?></td>
                    <td>
                        <?php 
                        $conv_avdp = $todayupload->av_dp;
                        switch ($conv_avdp) {
                            case 1:
                               echo "Arrival";
                               break;
                            case 2:
                               echo "Departure";
                               break;                                       
                            default:
                                echo "Invalid Arrival/Departure Type";
                        }
                        ?>                      
                    </td>
                    <td><?php echo $todayupload->remark;?></td>
                    <td><?php echo $todayupload->user;?></td>
                </tr>
                <?php 
            } 
            ?>
        </tbody>
    </table>
    <form action="" method="post" id="deletedataform">
        <input type="submit" name="delete" value="Delete" class="btn btn-info pull-right" style="width:100px; margin-bottom:10px;" />
    </form>

</div>

<?php
global $wpdb;
if(isset($_POST['delete'])){
    $checkbox = $_POST['vschbox'];
    for($i=0;$i<count($checkbox);$i++){
        $del_id = $checkbox[$i]; 

        $message = "Data deleted successfully !";
    }
}
?>
  • 写回答

1条回答 默认 最新

  • droirqk4795 2018-08-10 08:20
    关注
    ********Big Thanks to "tilz0r" in the comments.**********
    ***I'm new here, don't know how to close my asked question, so I'll leave a answer here.***
    **In case "tilz0r" post the answer, I'll Mark "tilz0r" post as the correct answer**
    
    <?php
    global $wpdb;
    if(isset($_POST['delete'])){
        $checkbox = $_POST['vschbox'];
        for($i=0;$i<count($checkbox);$i++){
            $del_id = $checkbox[$i]; 
            $wpdb->query( 
                "DELETE FROM tblvessel
                 WHERE id IN($del_id)
                "       
            );
    
            $message = "Data deleted successfully !";
        }
    }
    ?>
    
    <div class="container" style="padding-left: 0">
        <form action="" method="post" id="deletedataform">
            <table class="table table-bordered">
                <thead>
                    <tr>
                        <th></th>
                        <th>ETA</th>
                        <th>Vessel type</th>
                        <th>Vessel</th>             
                        <th>Flag</th>
                        <th>Origin</th>
                        <th>Destination</th>
                        <th>Arrival/Departure</th>
                        <th>Remark</th>
                        <th>User</th>
                    </tr>
                </thead>
                <tbody>
                    <?php
                    global $wpdb;
                    $today  =   date('Ymd');
    
                    $todayuploads = $wpdb->get_results ( "SELECT * FROM tblvessel WHERE upload_date = $today ORDER BY date DESC, type, vessel, av_dp ASC" );
    
                    foreach ( $todayuploads as $todayupload )   {
    
                        $id = $todayupload->id;
                        ?>
                        <tr>
                            <td><input type="checkbox" name="vschbox[]" value="<?php echo $id; ?>"></td>
                            <td><?php echo date_format(date_create($todayupload->date), 'd/m/Y' ); ?> <?php echo $todayupload->eta_etd; ?></td>
                            <td>
                                <?php 
                                $conv_type = $todayupload->type;
                                switch ($conv_type) {
                                    case 1:
                                       echo "Container Barges";
                                       break;
                                    case 2:
                                       echo "General Cargo Barges";
                                       break;
                                    case 3:
                                       echo "Tourist Vessel";
                                       break;
                                    case 4:
                                       echo "Motor Tanker";
                                       break;                           
                                    default:
                                        echo "Invalid Vessel Type";
                                }
                                ?>                      
                            </td>
                            <td><?php echo $todayupload->vessel;?></td>
                            <td><?php echo $todayupload->flag;?></td>
                            <td><?php echo $todayupload->origin;?></td>
                            <td><?php echo $todayupload->destination;?></td>
                            <td>
                                <?php 
                                $conv_avdp = $todayupload->av_dp;
                                switch ($conv_avdp) {
                                    case 1:
                                       echo "Arrival";
                                       break;
                                    case 2:
                                       echo "Departure";
                                       break;                                       
                                    default:
                                        echo "Invalid Arrival/Departure Type";
                                }
                                ?>                      
                            </td>
                            <td><?php echo $todayupload->remark;?></td>
                            <td><?php echo $todayupload->user;?></td>
                        </tr>
                        <?php 
                    } 
                    ?>
                </tbody>
            </table>
    
            <input type="submit" name="delete" value="Delete" class="btn btn-info pull-right" style="width:100px; margin-bottom:10px;" />
        </form>
    
    </div>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站