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

时间:2015-11-14 06:56:39

标签: php pdo

如何将值绑定到使用不同语句进行部分处理的变量,然后使用php连接。= method

请注意,我没有使用数组来绑定参数 下面是一段代码

$wher = '';

现在我已经添加了几个varibles到$ wher像

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 ";
    }

$ 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 ";
    }

现在我在数据库查询中使用$ wher,如

// 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正在SQL select查询中使用。 如何将占位符放在$ wher并绑定值? 我的问题就像PHP PDO binding variables to a string while concatenating it 但是方式略有不同

0 个答案:

没有答案