Php PDO执行以静默方式失败

Php PDO执行以静默方式失败,php,mysql,pdo,Php,Mysql,Pdo,问题: 下面的数据库操作失败语句执行方法以静默方式失败,我可以看到打印的是'lol',而不是'derp',因此我知道准备工作很好,只是在execute()处失败 不知道是什么原因导致了这个错误,我知道数据库正在运行,因为我可以使用带有prepare()和execute()的SQL语句从数据库中提取值。任何帮助都将不胜感激 $category = 'Derpenstien'; $order = 1; $parentID = 1; $

问题:

下面的数据库操作失败语句执行方法以静默方式失败,我可以看到打印的是'lol',而不是'derp',因此我知道准备工作很好,只是在execute()处失败

不知道是什么原因导致了这个错误,我知道数据库正在运行,因为我可以使用带有
prepare()
execute()
的SQL语句从数据库中提取值。任何帮助都将不胜感激

        $category = 'Derpenstien';
        $order = 1;
        $parentID = 1;

        $query = "insert into category (name, ordering, parent_id) values (:name, :ordering, :parent)";
        $newEntry = $db->getdb()->prepare($query);
        $newEntry->bindParam(':name', $category, \PDO::PARAM_STR);
        $newEntry->bindParam(':ordering', $order, \PDO::PARAM_INT);
        $newEntry->bindParam(':parent', $parentID, \PDO::PARAM_INT);

        var_dump('lol');

        $newEntry->execute();

        var_dump('derp');

放置
错误报告(E_ALL);ini设置(“显示错误”,1)在脚本的开头。如果您使用的是某个框架,则很可能是它通过某个配置文件来抑制错误,因为它认为它处于活动状态。@安德鲁:呃,这可能没有帮助。默认情况下,PDO不会引发异常/触发错误。您需要为每个实例覆盖它-即使这样,它也不能覆盖所有场景。您应该检查pdo::execute()的返回值,轮询pdo::errorCode(),并添加一个异常handlerAh,您完全正确。忘了那件事。发现文件夹上的权限未设置。。。现在可以使用快速chmod 777:)