Make WordPress Core


Ignore:
Timestamp:
03/05/2009 11:47:02 PM (17 years ago)
Author:
ryan
Message:

Add typecasting to wpdb::insert() and update(). Props filosofo. fixes #7171

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-includes/post.php

    r10711 r10724  
    15001500
    15011501        // expected_slashed (everything!)
    1502         $data = compact( array( 'post_author', 'post_date', 'post_date_gmt', 'post_content', 'post_content_filtered', 'post_title', 'post_excerpt', 'post_status', 'post_type', 'comment_status', 'ping_status', 'post_password', 'post_name', 'to_ping', 'pinged', 'post_modified', 'post_modified_gmt', 'post_parent', 'menu_order', 'guid' ) );
     1502        $fields = array( 'post_author' => '%d', 'post_date' => '%s', 'post_date_gmt' => '%s', 'post_content' => '%s', 'post_content_filtered' => '%s', 'post_title' => '%s',
     1503                'post_excerpt' => '%s', 'post_status' => '%s', 'post_type' => '%s', 'comment_status' => '%s', 'ping_status' => '%s', 'post_password' => '%s', 'post_name' => '%s',
     1504                'to_ping' => '%s', 'pinged' => '%s', 'post_modified' => '%s', 'post_modified_gmt' => '%s', 'post_parent' => '%d', 'menu_order' => '%d', 'guid' => '%s' );
     1505        $data = compact( array_keys( $fields) );
     1506        $data_formats = array_values( $fields );
    15031507        $data = apply_filters('wp_insert_post_data', $data, $postarr);
    15041508        $data = stripslashes_deep( $data );
     1509        error_log(var_export($data, true));
    15051510        $where = array( 'ID' => $post_ID );
    1506 
    1507         if ($update) {
     1511        $where_formats = array('%d');
     1512
     1513        if ( $update ) {
    15081514                do_action( 'pre_post_update', $post_ID );
    1509                 if ( false === $wpdb->update( $wpdb->posts, $data, $where ) ) {
     1515                if ( false === $wpdb->update( $wpdb->posts, $data, $where, $data_formats, $where_formats ) ) {
    15101516                        if ( $wp_error )
    15111517                                return new WP_Error('db_update_error', __('Could not update post in the database'), $wpdb->last_error);
     
    15231529                        }
    15241530                }
    1525                 if ( false === $wpdb->insert( $wpdb->posts, $data ) ) {
     1531                if ( false === $wpdb->insert( $wpdb->posts, $data, $data_formats ) ) {
    15261532                        if ( $wp_error )
    15271533                                return new WP_Error('db_insert_error', __('Could not insert post into the database'), $wpdb->last_error);
Note: See TracChangeset for help on using the changeset viewer.