简体   繁体   中英

How to display message on successfully deleting record from mysql in php

I am deleting from a table but I am unable to set message on delete

Here is my code

if(isset($_POST['delete'])) {
    $row_array = $_POST['post'];
    $row_ids = implode(', ', $row_array);
    $delete_sql = "DELETE from $table_name WHERE id IN ($row_ids)";
    $delete_result = $wpdb->get_results($delete_sql);
    var_dump($delete_result);
    if($delete_result) {
            $message = count($row_ids) . " submission deleted.";
    }
}


<?php
    if(isset($message)) {
    ?>
    <div id="message" class="updated notice is-dismissible"><p><?php echo $message; ?> </p><button type="button" class="notice-dismiss"><span class="screen-reader-text">Dismiss this notice.</span></button></div>
<?php } ?>

get_results() is used for getting results with SELECT ... query. For your task it is better to use query() function:

$delete_sql = "DELETE from $table_name WHERE id IN ($row_ids)";
$delete_result = $wpdb->query($delete_sql);
var_dump($delete_result);
if($delete_result) {
    $message = count($row_ids) . " submission deleted.";
}

You can try this.

You should create functions instead of putting all your code together. In different files if possible.

<?php
function delete(){
    //your delete function
    //this line will return true at the end 
    return true;
}
?>

<?php
if(isset($_POST['delete'])) {
    if($delete($_POST['delete'])) {
?>
        <div id="message" class="updated notice is-dismissible">
            <p><?php echo $message; ?></p>
            <button type="button" class="notice-dismiss">
                <span class="screen-reader-text">Dismiss this notice.</span>
            </button>
        </div>
<?php 
    }
}
?>

Let me know if it works

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM