我的帖子中有一个复选框,如果没有选中复选框,但当我按下更新按钮时,没有发生任何事情,并且该行没有被删除,我想删除一个数据库行。这是我的密码
if (isset($_POST[\'save-author-to-book\'])) {
$key = \'save-author-to-book\';
$values_to_save = array();
$new_values = $_POST["save-author-to-book"];
$existing_values = get_post_meta( $post_id, $key, true ) ;
if(!empty($new_values)){
foreach($new_values as $new_value ){
$values_to_save[] = $new_value ;
}
update_post_meta( $post_id, $key, $values_to_save );
}
}
else{
delete_post_meta( $post_id, $key, $meta_value=\'\');
// break;
}
任何想法都将不胜感激。
最合适的回答,由SO网友:Maruti Mohanty 整理而成
这是因为meta的值key 位于if子句内,未为else设置。
尝试
else {
$key = \'save-author-to-book\';
delete_post_meta( $post_id, $key, $meta_value=\'\');
// break;
}