Php Can';找不到什么';PDO语句::Execute有什么问题吗=/

Php Can';找不到什么';PDO语句::Execute有什么问题吗=/,php,pdo,Php,Pdo,我开始构建一个用于我的应用程序的小PDO包装器。然而,当我开始编码时,我遇到了一个似乎无法解决的问题 我的问题是PDO语句的execute()返回false,我不知道值绑定或执行是否有问题。我已经测试了这个查询(不管怎样,它非常简单),并且运行良好。与服务器的连接也正常工作 我希望你能帮忙!这是我的密码: <?php class DataBase { private $PDO; private static $instancia; public sta

我开始构建一个用于我的应用程序的小PDO包装器。然而,当我开始编码时,我遇到了一个似乎无法解决的问题

我的问题是PDO语句的execute()返回false,我不知道值绑定或执行是否有问题。我已经测试了这个查询(不管怎样,它非常简单),并且运行良好。与服务器的连接也正常工作

我希望你能帮忙!这是我的密码:

    <?php

class DataBase {

    private $PDO;
    private static $instancia;

    public static function getInstance() {
        if (!self::$instancia instanceof self) {
            self::$instancia = new self;
        }
        return self::$instancia;
    }

    function __construct() {
        $configuracion = Configuracion::getInstance();
        // echo "mysql:host={$configuracion->dbHost};dbname=mysql", $configuracion->dbUser, $configuracion->dbPassword;
        try {
            $this->PDO = new PDO("mysql:host={$configuracion->dbHost};dbname=mysql", $configuracion->dbUser, $configuracion->dbPassword);
            debug("conectado a la db", __FILE__, __LINE__);
        } catch (PDOException $e) {
            debug($e->getMessage(), __FILE__, __LINE__);
        }
    }

    function selectDistanceFromDistances($a, $b) {

        $sentencia = $this->PDO->prepare('SELECT distance FROM distances WHERE a = ? AND b = ?;');

        // debug($sentencia->execute(array($a, $b)));
        $sentencia->bindValue(1, 15, PDO::PARAM_INT);

        $sentencia->execute();
        $this->PDO->errorInfo();

        $resultado = $sentencia->fetchAll();

        return $resultado;
    }

}

?>

谢谢

    $sentencia->execute();
    $this->PDO->errorInfo();
您正在执行执行,然后询问错误信息,但实际上您没有对错误信息执行任何操作!您似乎有一个调试功能,所以在这里使用它似乎是一个好主意

您的查询有两个占位符,但您只绑定了其中一个占位符,所以这可能就是错误所在

您可能需要考虑和使用Test/catch。默认情况下,PDO在构造函数之外是静默的

您正在执行执行,然后询问错误信息,但实际上您没有对错误信息执行任何操作!您似乎有一个调试功能,所以在这里使用它似乎是一个好主意

您的查询有两个占位符,但您只绑定了其中一个占位符,所以这可能就是错误所在


您可能需要考虑和使用Test/catch。PDO在构造函数之外默认是静默的。

在我绝望的情况下,我一定是在这里粘贴了错误的代码。如果启用异常模式没有帮助,我会修复这些错误并返回给你们。:)好吧,我连接到了错误的数据库,这是一个愚蠢的深夜错误。谢谢你的回答,查尔斯!在我的绝望中,我一定是把错误的代码粘贴到这里了。如果启用异常模式没有帮助,我会修复这些错误并返回给你们。:)好吧,我连接到了错误的数据库,这是一个愚蠢的深夜错误。谢谢你的回答,查尔斯!