prefix."recommend_bet" /> prefix."recommend_bet" /> prefix."recommend_bet"/>

mysql_real_escape_string() function not working in wordpress WP_Query?

3.4k Views Asked by At

We have tried this way. But it is not working. please any one tell alternative method in wordpress

$wpdb->query("UPDATE ".$wpdb->prefix."recommend_bets SET `title`='".mysqli_real_escape_string($title)."',`category`='".$catID."',....
2

There are 2 best solutions below

1
Rushil K. Pachchigar On

When working with database in WordPress you should never use the low lever mysql_* or mysqli_* functions.

Always use $wpdb methods, in your case you should use prepare():

<?php
$wpdb->query( $wpdb->prepare( 
    "UPDATE ".$wpdb->prefix."recommend_bets
SET title = %s,
titleb = %s
WHERE ID = %d       
",
    'static', 'static2', 7
) );

// Or

$wpdb->update( 
    'table', 
    array( 
        'column1' => 'value1',  // string
        'column2' => 'value2'   // integer (number) 
    ), 
    array( 'ID' => 1 ), 
    array( 
        '%s',   // value1
        '%d'    // value2
    ), 
    array( '%d' ) 
);
?>
0
Sushma Biradar On

You can use wpdb::_real_escape( string $string ) function.

https://developer.wordpress.org/reference/classes/wpdb/_real_escape/