PDO没有绑定参数

时间:2012-11-15 19:21:44

标签: php mysql pdo parameter-passing parameterbinding

  

可能重复:
  PHP PDO bindValue in LIMIT

我昨天开始使用PDO,所以我仍然很容易与它混淆。我有一个类Query:

class Query
{
    static function GetList($query, $binds = array())
    {
        global $DBH;
        $STH = $DBH->prepare($query);
        $STH->execute($binds);

        return $STH;
    }
}

我打电话给:

$result = Query::GetList("SELECT * FROM translations_missing 
                          ORDER BY translation_missing_id LIMIT ?, ?", 
                          array(0, 10));
while($row = $result->fetch())
{
    echo 'moo'; 
}

我没有得到任何结果!但是,如果我删除参数并调用:

$result = Query::GetList("SELECT * FROM translations_missing 
                          ORDER BY translation_missing_id LIMIT 0, 10");

我多次打印'moo'。我很确定我一如既往地遗漏了一些小事,但我找不到这个问题。

如果我这样做,就让自己对此感到困惑:

$result = Query::GetList("SELECT * FROM translations_missing 
                          WHERE en = ?", 
                          array("Building"));

我打印'moo'!我现在认为我是以错误的方式绑定整数,但是......有人能指出我为什么绑定不起作用吗?

1 个答案:

答案 0 :(得分:1)

看起来你对整数绑定的事情是正确的。

请参阅: How to apply bindValue method in LIMIT clause?