所以我有这段代码:
<?php
global $wpdb;
$table_name = $wpdb->prefix . 'programma';
// This retrieves code from the database and displays it.
$retrieve_data = $wpdb->get_results( "SELECT Anaam FROM {$table_name}" );
?>
<form action="#" enctype="multipart/form-data" method="post">
<?php wp_nonce_field( 'set_programma_action', 'set_programma' ); ?>
<table>
<?php foreach ( $retrieve_data as $retrieved_data ) { ?>
<tr>
<th>Programma:</th>
<td style="vertical-align: middle;"><?php echo esc_html( $retrieved_data->Anaam ); ?></td>
<th>
<button name="programma" type="submit" value="<?php echo esc_attr( $retrieved_data->Anaam ); ?>">Abonneer</button>
</th>
</tr>
<?php } ?>
</table>
</form>
<?php
// Verify nonce and save the data when user is logged in.
// Nonce docs: https://developer.wordpress.org/themes/theme-security/using-nonces/
if (isset( $_POST['programma'] ) && isset( $_POST['set_programma'] ) && wp_verify_nonce( $_POST['set_programma'], 'set_programma_action' )) {
$data = filter_input( INPUT_POST, 'programma', FILTER_SANITIZE_STRING );
$current_user_id = get_current_user_id();
if ( $current_user_id && ! empty( $data ) ) {
update_user_meta( $current_user_id, 'programma', $data );
}
}
?>
我有一个页面,一旦用户选择了想要的东西,用户就可以选择东西;他们的选择(连同选择它的用户)被保存在数据库中。
问题在于,一旦数据保存在数据库中,旧数据就会被覆盖。看起来像这样:
旧数据(旧用户选择):
新数据(新用户选择):
如您所见,旧数据不再存在。它被新选择(22nl)取代。我该如何解决这个问题?
问候,
Johan
答案 0 :(得分:0)
如果要获取所有这些数据,可以通过将数组作为第三个arg传递来更新元。