You can have an ajax action that sent the data to the backend populate the table and return the success or the errors back.
You can use this actions
add_action('wp_ajax_*', 'custom_table_insert');
add_action('wp_ajax_nopriv_*', 'custom_table_insert'); // anonymous users
This will give you more control and ultimately a far better user experience.
// Ajax Request template
jQuery.ajax({
url : your_settings_object.ajax_url,
type : 'post',
data : {
action : 'wp_ajax_*',
table_content : table_content
},
success : function( response ) {
alert(response)
}
});
Note: your_settings_object is a custom object that use to transfer global variables from backend to JS
Also the table_content is your variable to pass the data and you can take them from the PHP with $_POST['table_content']