我正在尝试执行存储过程,我希望将输出作为关联数组,但我收到了以下错误。
在布尔值
上调用成员函数fetchAll()
以下是我的PHP脚本调用过程
$query_text = "CALL procedure1(?,?,@mobNum,@firstInsert);";
$output=$this->pdo->prepare($query_text);
$output=$output->execute(array($number,$code));
print_r($output->fetchAll(PDO::FETCH_ASSOC));
答案 0 :(得分:1)
如果procedure1
有4个参数,您应该:
$query_text = "CALL procedure1(?,?, @mobNum, @firstInsert);";
$stmt = $this->pdo->prepare($query_text);
$stmt->bindParam(1,$number);
$stmt->bindParam(2,$code);
$result = $stmt->execute();
print_r($stmt->fetchAll(PDO::FETCH_ASSOC));
如果只是2将第一行改为$query_text = "CALL procedure1(?,?);";
那么。
编辑如果您仍然遇到错误,请尝试处理sql错误:
if ($result) {
print_r($stmt->fetchAll(PDO::FETCH_ASSOC));
} else {
echo "\nPDOStatement::errorInfo():\n";
$arr = $stmt->errorInfo();
print_r($arr);
}