我在PHP PDO中准备并执行查询有以下定义。查询被执行,但最终我收到消息:注意:试图获取非对象的属性。我试过已经用FETCH_COLUMN但是是一样的。有人能帮助我吗?获取函数PDO返回错误
public function GetIDbyname($name){
try{
$stm = $this->pdo
->prepare("SELECT id FROM prozess WHERE name = ?");
$stm->execute(array($name));
$r = $stm->fetchAll(PDO::FETCH_OBJ);
return $r->id;
} catch (Exception $e){
die($e->getMessage());
}
}
请检查var_dump($ r) –
检查'$ stm'和'$ r'是否为空。错误说,你在某处做'null-> someFunctionCall()'而不是'object-> someFunctionCall()'为什么用'?'而不是命名参数? 'WHERE name =:name' /' - > execute(array(':name'=> $ name))' – Justinas
$ stm将会为空,因为它在函数中,而我没有看到它声明为参数或任何东西。 – Mattigins