从php函数调用存储过程

从php函数调用存储过程,php,stored-procedures,mysqli,Php,Stored Procedures,Mysqli,我正在努力学习有关存储过程的知识。我有一个php函数,名为qcWaitingTags()。在这个函数中,我试图调用存储过程。但是当我从我的php文件调用该函数时,它出现了错误期望参数1是mysqli\u result boolean…。但是如果我从这个函数中取出全部代码并直接使用它,那么它就工作了。有人知道我做错了什么吗 function qcWaitingTags(){ global $conn; // $totalQcWaitingQuery = "SELECT * FROM

我正在努力学习有关存储过程的知识。我有一个php函数,名为
qcWaitingTags()
。在这个函数中,我试图调用
存储过程
。但是当我从我的
php
文件调用该函数时,它出现了错误
期望参数1是mysqli\u result boolean…
。但是如果我从这个函数中取出全部代码并直接使用它,那么它就工作了。有人知道我做错了什么吗

function qcWaitingTags(){
global $conn;
//    $totalQcWaitingQuery = "SELECT * FROM plannertags WHERE (status = '0' OR status = '2') AND currentStage = '12' AND assignedTo = '0' AND handoverStatus='0' AND failedStatus='0'";
$totalQcWaitingQuery = "CALL qcWaitingQuery()";
$totalQcWaitingQueryExecute = mysqli_query($conn, $totalQcWaitingQuery);
$totalQcWaitingTags = mysqli_num_rows($totalQcWaitingQueryExecute);
return $totalQcWaitingTags;
}

这个问题是因为使用了一个全局变量,该变量预期它将触发连接。但事实并非如此。我在函数中包含了连接文件,它正在工作

function qcWaitingTags(){
  include "../../commonFilesForAll/db.php";
  $totalQcWaitingQuery = "CALL qcWaitingQuery()"; //This is calling stored procedure
  $totalQcWaitingQueryExecute = mysqli_query($conn, $totalQcWaitingQuery);
  $totalQcWaitingTags = mysqli_num_rows($totalQcWaitingQueryExecute);
  return $totalQcWaitingTags;
}

是的,因为mysqli_查询返回一个false,这是我理解的布尔值。但是为什么返回false?您的查询语法错误。我可以知道哪里错了吗?@Jerson语法中没有任何错误。我已经解决了这个问题。这是因为使用了期望触发连接的全局变量。但事实并非如此。我在函数中包含了连接文件,它正在工作。看到我的答案了吗