PHP PDO如何将值绑定到变量包含连接字符串

How do i bind values to a variable which is partially processed with diffrent statements and then concatenated using php .= method

Please note that I am not using array to bind parameters.
below is piece of code

$wher = '';

now I have added few varibles to $wher like

if (!empty($_SESSION['advs']['title']))
    {
        $wher .= '(';
        if (isset($_SESSION['advs']['desc']))
        {
            $wher .= "(au.description like '%" . $system->cleanvars($_SESSION['advs']['title']) . "%') OR ";
        }
        $wher .= "(au.title like '%" . $system->cleanvars($_SESSION['advs']['title']) . "%' OR au.id = " . intval($_SESSION['advs']['title']) . ")) AND ";
    }

more addition to $wher

if (isset($_SESSION['advs']['buyitnow']))
    {
        $wher .= "(au.buy_now > 0 AND (au.bn_only = 'y' OR au.bn_only = 'n' && (au.num_bids = 0 OR (au.reserve_price > 0 AND au.current_bid < au.reserve_price)))) AND ";
    }

    if (isset($_SESSION['advs']['buyitnowonly']))
    {
        $wher .= "(au.bn_only = 'y') AND ";
    }

    if (!empty($_SESSION['advs']['zipcode']))
    {
        $userjoin = "LEFT JOIN " . $DBPrefix . "users u ON (u.id = au.user)";
        $wher .= "(u.zip LIKE '%" . $system->cleanvars($_SESSION['advs']['zipcode']) . "%') AND ";
    }

now I am using $wher in database query like

// get total number of records
    $query = "SELECT count(*) AS total FROM " . $DBPrefix . "auctions au
            " . $userjoin . "
            WHERE au.suspended = 0
            AND ".$wher . $ora . "
            au.starts <= " . $NOW . "
            ORDER BY " . $by;

$wher is being used in SQL select query. How do I put placeholders to $wher and bind the values?? my problem is something like PHP PDO binding variables to a string while concatenating it But slight different way