WORDPRESS: utilizzo della funzione wpdb->update

Salve a tutti,
oggi analizzeremo l'uso della funzione $wpdb->update di WORDPRESS:




Ecco un esempio:

        $update_id =  $wpdb->update(
                    'wp_posts', //Tabella
                array('ID' => $data), // Data
                array( 'ID' => $wp_old_id),// WHERE conditions Array                 
                array( '%d' ),
                array( '%d' )                
        );       


Ecco la funzione: 
  <?php $wpdb->update( $table, $data, $where, $format = null, $where_format = null ); ?>


table 
(stringa)Il nome della tabella da aggiornare.
data 
(array) I dati da aggiornare (sotto forma di coppie colonna => valore pairs). Sia i $data delle colonne che i $data dei valori devono essere "grezzi" (non devono essere stati nemmeno sottoposti ad escaping SQL). Ciò significa che se state utilizzando dati in GET o POST dovrete utilizzare striplashes() per impedire che le barre finiscano nel database.
where 
(array) un array di nomi di clausole WHERE (in forma di coppie colonna => valore). Clausole multiple verranno unite con un AND. Sia le colonne di$where che i valori di $where dovrenno essere "grezzi".
format 
(array|stringa) (opzionale) Un array di formati da mappare su ciascuno dei valori di $data. Se stringa, questo formato verrà usato per tutti i valori di $data.
where_format 
(array|stringa) (opzionale) Un array di formati da pmappare su ciascuno dei valori di $where. Se stringa, questo formato verrà usato per tutti i valori di $where.
I possibili valori per i formati: %s per una stringhe; %d per un numero decimale e %f per un numero in virgola mobile.Se omesso, tutti i valori di $where verranno trattati come stringhe.


Riferimenti:  (sez. update di riga)
    http://codex.wordpress.org/it:Riferimento_classi/wpdb


L'esempio in questione modifica l'ID di un post (utiole per le migrazioni, ad esempio)

        $update_id =  $wpdb->update(
                    'wp_posts', //Tabella
                array('ID' => $data), // Data
                array( 'ID' => $wp_old_id),// WHERE conditions Array                 
                array( '%d' ),
                array( '%d' )                
        );       
   


L'esempio in questione modifica il titolo di un post

        $update_id =  $wpdb->update(
                    'wp_posts', //Tabella
                array('post_title' => $data), // Data
                array( 'ID' => $wp_old_id),// WHERE conditions Array                 
                array( '%s' ),
                array( '%d' )                
        );    


NOTA: notare che è stata cambiata la variabile dentro l'array array( '%s' ) relativo alla prima variabile (formato della varibile) in quanto a differenza del primo esempio, non è più un numero ma una stringa, per cui va messo %s



Commenti