WordPress.org

Make WordPress Core

Ticket #19643: 19643.patch

File 19643.patch, 1.2 KB (added by kurtpayne, 6 years ago)

Alternate patch - handles multi-dimensional arrays

  • wp-admin/includes/file.php

     
    10461046</table>
    10471047
    10481048<?php
     1049
     1050$array_print = create_function('$name, $arr, $func', '
     1051        foreach ( $arr as $k => $v ) {
     1052                if ( is_array( $v ) ) {
     1053                        $func( $name . "[" . $k . "]", $v, $func );
     1054                } else {
     1055                        echo "<input type=\"hidden\" name=\"";
     1056                        echo esc_attr( $name ) . "[" . esc_attr( $k ) . "]\" ";
     1057                        echo "value=\"";
     1058                        echo esc_attr( stripslashes( $v ) );
     1059                        echo "\" />";
     1060                }
     1061        }
     1062');
     1063
    10491064foreach ( (array) $extra_fields as $field ) {
    1050         if ( isset( $_POST[ $field ] ) )
    1051                 echo '<input type="hidden" name="' . esc_attr( $field ) . '" value="' . esc_attr( stripslashes( $_POST[ $field ] ) ) . '" />';
     1065        if ( isset( $_POST[ $field ] ) ) {
     1066                if ( is_array( $_POST[ $field ] ) )
     1067                        $array_print( "$field", $_POST[ $field ], $array_print );
     1068                else
     1069                        echo '<input type="hidden" name="' . esc_attr( $field ) . '" value="' . esc_attr( stripslashes( $_POST[ $field ] ) ) . '" />'; 
     1070        }       
    10521071}
    10531072submit_button( __( 'Proceed' ), 'button', 'upgrade' );
    10541073?>