通过单击按钮从 table 中删除自定义行

Delete a custom row from table by clicking button

此代码适用于我,但单击按钮后,没有任何变化。只有在我再次手动刷新页面后才能看到删除结果。 有什么要补充的来解决这个问题吗?

<?php
 foreach($results as $value){
     echo "<tr>";
     echo "<td class='posts column-posts'>".$value->id."</td>";
     echo "<td class='email column-email'>".$value->email."</td>";
     echo "<td class='description column-description'><div id='col-container'>".$value->details."</div></td>";
    $delRow = "delete_registration_{$value->id}";
     echo "<td class='posts column-posts'><input type='submit' name= $delRow value='delete'/></td>";
     echo "</tr>";
     if(isset($_POST[$delRow])){
         $wpdb->delete( 'conference_register', array( 'id' => $value->id ) );
     }
}

如果要删除行,则需要跳过输出行。像这样:

<?php
 foreach($results as $value){
    $delRow = "delete_registration_{$value->id}";
    if(isset($_POST[$delRow])){
        $wpdb->delete( 'conference_register', array( 'id' => $value->id ) );
    } else {
        echo "<tr>";
        echo "<td class='posts column-posts'>".$value->id."</td>";
        echo "<td class='email column-email'>".$value->email."</td>";
        echo "<td class='description column-description'><div id='col-container'>".$value->details."</div></td>";
        echo "<td class='posts column-posts'><input type='submit' name= $delRow value='delete'/></td>";
        echo "</tr>";
    }
}

如果删除该行,则可以避免显示该行。

foreach($results as $value){
    if(isset($_POST[$delRow])){
        $wpdb->delete( 'conference_register', array( 'id' => $value->id ) );
    } 
    else {
        echo "<tr>";
        echo "<td class='posts column-posts'>".$value->id."</td>";
        echo "<td class='email column-email'>".$value->email."</td>";
        echo "<td class='description column-description'><div id='col-container'>".$value->details."</div></td>";
        $delRow = "delete_registration_{$value->id}";
        echo "<td class='posts column-posts'><input type='submit' name= $delRow value='delete'/></td>";
        echo "</tr>";
     }
}