Старые данные перезаписываются новыми - PullRequest
0 голосов
/ 31 марта 2020

Итак, у меня есть этот кусок кода:

<?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 );
        }
    }
?>

У меня есть страница, на которой пользователи могут выбирать что-то, как только они выбрали то, что хотели; их выбор (вместе с пользователем, который его выбрал) сохраняется в базе данных.

Проблема заключается в том, что после сохранения данных в базе данных старые данные перезаписываются. Это выглядело бы так:

Старые данные (выбор старого пользователя):

enter image description here

Новые данные (выбор нового пользователя):

enter image description here

Как видите, старых данных больше нет. Он заменен новым выбором (22нл). Как я могу решить эту проблему?

Привет,

Йохан

1 Ответ

0 голосов
/ 31 марта 2020

Если вы хотите получить все эти данные, вы можете обновить мета, передав массив в качестве третьего аргумента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...