Quantcast
Channel: WordPress.org Forums » All Topics
Viewing all articles
Browse latest Browse all 59525

query with $wpdb->prepare has different results

$
0
0

Replies: 0

Hi,
Is there any reason a query constructed with wp database functions would return different results than one that is not.

old method:
$query = “select count(distinct(t.title)) as num_of_items from title t
WHERE t.description LIKE ‘%{$mysql[“search”]}%’ AND t.active = 1 “;
$result = mysql_query( $query, $link );
$line = mysql_fetch_array( $result, MYSQL_ASSOC );
var_dump($line);

new method:
$mysql[“search”] = $wpdb->esc_like( $mysql[“search”] );
$mysql[“search”] = ‘%’ . $mysql[“search”] . ‘%’;
$query = “select count(distinct(t.title)) as num_of_items from title as t
WHERE t.description LIKE %s AND t.active = 1 “;
$sql = $wpdb->prepare( $query, $mysql[“search”]);
$num_of_items_arr = $wpdb->get_col($sql,0);
var_dump($num_of_items_arr);

As a side note:
Why does the above query ($sql) echo out as:
select count(distinct(t.title)) as num_of_items from title as t
WHERE t.description LIKE ‘{84e1baeb63351ba70aa6c0513d7904e1bdf6ab1481cd18e2a75f8b8acd91dc2b}saga{84e1baeb63351ba70aa6c0513d7904e1bdf6ab1481cd18e2a75f8b8acd91dc2b}’ AND t.active = 1 “


Viewing all articles
Browse latest Browse all 59525

Trending Articles