运行多个MYSQL存储过程时调用SPCommands时出错

时间:2012-05-24 19:59:43

标签: php mysql

我是php新手,但不是程序员...

当我在一个页面中多次调用一个过程时,我很难调用和显示内容。我试图从MYSQL的两个不同SP调用中显示两个单独的记录集。我可以显示第一个呼叫,但第二个呼叫失败。我不确定我做错了什么但也许有人可以帮忙吗?

当我打电话给第二个程序时,我一直收到错误:

调用SPCommands不同步时出错;你现在不能运行这个命令

我正在运行Windows btw

下面的代码...... PHP

// First call to SP
$page = 2;
$section = 1;

include("DatabaseConnection.php"); //general connection - works fine

$sql = 'CALL GetPageContent("'.$page.'", "'.$section.'")';

$result = mysqli_query($conn, $sql) or die('Error calling SP' .mysqli_error($conn));

while($row=mysqli_fetch_assoc($result))
{
   // DO STUFF< REMOVED TO MAKE READING CLEARER
}

mysqli_free_result($result);

//SECOND CALL BELOW


$section = 2; // change parameter for different results

$sql = 'CALL GetPageContent("'.$page.'", "'.$section.'")';

$result = mysqli_query($conn, $sql) or die('Error calling SP' .mysqli_error($conn));


while($row=mysql_fetch_assoc($result))
{
   // DO STUFF< REMOVED TO MAKE READING CLEARER
}


mysqli_free_result($result);

1 个答案:

答案 0 :(得分:0)

问题在于您的SP为您提供了多个结果。

使用mysqli_multi_query,请参阅http://us2.php.net/mysqli_multi_query