在 PHP 上调用 MySQL 存储过程

问题描述:

谁能帮助我如何在 php 中调用存储过程?我有一个调用 mysql 存储过程的以下函数,但它提交了一个错误.

can anyone help me on how to call stored proc in php? I have a below function that call mysql stored proc but it commits an error.

public function getProductionItems($selectedProjectID,$selectedTaskID,$processingType,$isFirstTask)
    {
        $prodItemList = array();

        $strQry = "CALL getProductionItem(".$selectedProjectID.",".$selectedTaskID.",".$processingType.",".$isFirstTask.")";
        $mysqli = new mysqli();
        $mysqli = $this->getPvtConnection();
        $stmt = $mysqli->query($strQry);

        while($data = $stmt->fetch_assoc())
        {
            $prodItem = new productionItemModel();
            $prodItem->setTaskQueueID($data['taskQueueID']);
            $prodItem->setProdItemName($data['prodItemName']);
            array_push($prodItemList,$prodItem);
        }
        mysqli_free_result($stmt);
        $mysqli->close();

        return $prodItemList;
    }

遇到的错误是:致命错误:调用 C:\AppServ\www\ptsproject\dao\projecttask\projtaskdao.php 中第 1298 行非对象上的成员函数 fetch_assoc()

Error encountered is : Fatal error: Call to a member function fetch_assoc() on a non-object in C:\AppServ\www\ptsproject\dao\projecttask\projtaskdao.php on line 1298

我认为您缺少 ':

 $strQry = "CALL getProductionItem('$selectedProjectID','$selectedTaskID','$processingType','$isFirstTask')";