WP Post Meta Box Field Not Showing Updated Field

There is problem in your show_the_meta_box() function you have used value attribute for the textarea field don’t use value attribute for textarea field.

For more information on textarea atrributes visit this page.

So the correct code show_the_meta_box() function is as shown in following.

function show_the_meta_box() {
global $meta_box_code, $post;

echo '<input type="hidden" name="id_meta_box_nonce" value="'. wp_create_nonce( basename( __file__ ) ). '" />';
echo '<table class="form-table">';

foreach ( $meta_box_code['fields'] as $field ) {
    $meta = get_post_meta( $post->ID, $field['id'], true );
    switch ( $field['type'] ) {
        case 'textarea':
            echo '<tr>', '<th style="width:25%"><label for="', $field['id'], '"><strong>', $field['name'], '</strong><span style="line-height:18px; display:block; color:#999; margin:5px 0 0 0;">' . $field['desc'] . '</span></label></th><td>';
            echo '<textarea name="'. $field['id']. '" id="'. $field['id']. '"  rows="8" cols="5" style="width:100%; margin-right: 20px; float:left;">'. $meta.'</textarea>';
            break;
    }

}

echo '</table>';
}