删除自定义 wp db 中的行 [英] delet row in custom wp db
本文介绍了删除自定义 wp db 中的行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试从我在 WP db 中创建的自定义表中删除一行.问题是删除总是删除最后一行,而不是所需的行.不确定 $_POST['field_id'];
是否正确传递.有什么想法吗?
I'm trying to delete a row from my custom table created in WP db. The problem is that the delete always removes the last row, not the row desired. Not sure if the $_POST['field_id'];
was passed properly. Any ideas?
global $wpdb;
global $current_user;
get_currentuserinfo();
$user_id = $current_user->ID;
$table_add_one = $wpdb->prefix . "wwy_data_one";
$table_add_two = $wpdb->prefix . "wwy_data_two";
$row = $wpdb->get_results( "SELECT * FROM wp_wwy_data_one WHERE user_id=$user_id ORDER BY slide_number");
echo '<form action="" method="post" enctype="multipart/form-data">';
echo "<table class='display'>";
echo "<th>Slide#</th>";
//echo "<th>User ID</th>";
echo "<th>Map</th>";
echo "<th>Date</th>";
echo "<th>Lenght</th>";
echo "<th>Caption</th>";
echo "<th>Action</th>";
echo "<th>Markers</th>";
if (!$row){ echo "<tr><td colspan='6'>No Slides created!</td></tr>";}
foreach ( $row as $row )
{
// delete row
$warn_del = '"Are you sure to delete this slide?"';
if(isset($_POST['field_id'])) {
$table_add_one = $wpdb->prefix . "wwy_data_one";
$the_value = $_POST['field_id'];
$rows_affected_one = $wpdb->delete( $table_add_one, array( 'field_id' => $the_value ));
}
echo "<tr>";
echo "<td>" . $row->slide_number . "</td>";
// echo "<td>" . $row->user_id . "</td>";
echo "<td>" . $row->map_type . "</td>";
echo "<td>" . $row->date . "</td>";
echo "<td>" . $row->length . "</td>";
echo "<td>" . $row->caption . "</td>";
echo "<td><input type='hidden' name='field_id' value='$row->field_id'><input onclick='return confirm($warn_del);' type='submit' value='delete' class='delete'></td>";
echo '<td><label><input type="radio" name="geo" rel="'.$row->slide_number.'" />Show</label></td>';
echo "</tr>";
}
echo "</table>";
echo "</form>";
推荐答案
这可能有帮助
echo "<td><input type='hidden' name='field_id' value='$row->field_id'><input onclick='return confirm($warn_del);' type='submit' value='delete' class='delete'></td>";
像这样使用
echo "<td><input type='submit' name='field_id' value='" . $row->field_id . "' placeholder='Delete' onclick='return confirm($warn_del);'><td>";
哇啦!
这篇关于删除自定义 wp db 中的行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文