如何在for循环中调用存储过程

时间:2013-08-02 10:31:53

标签: php mysql stored-procedures

我有php代码作为folloes,我在里面调用存储过程for循环。但是当我执行m得到错误时“命令不同步;你现在不能运行这个命令” 但如果我删除for循环m得到正确的结果

<?php 
$sum=0;
for($i=0;$i<10;$i++){
    $overall_sat=mysql_query("call daily_sales('HO Bangalore','2013-07-01','2013-07-30')");

        while($row=mysql_fetch_row($overall_sat)){ echo "<pre>"; print_r($row);?>
            <td><?php echo $row['0'];
            $sum=$sum+$row['sat'];?></td>
        <?}
}
if(!$overall_sat){
    echo mysql_error();
}
?>

1 个答案:

答案 0 :(得分:0)

您的连接丢失所以在调用存储过程之前先关闭连接并再次创建与数据库的连接

<?php 
$sum=0;
for($i=0;$i<10;$i++){
    mysql_close();          // close connection
   // create connectivity

    $overall_sat=mysql_query("call daily_sales('HO Bangalore','2013-07-01','2013-07-30')");

        while($row=mysql_fetch_row($overall_sat)){ echo "<pre>"; print_r($row);?>
            <td><?php echo $row['0'];
            $sum=$sum+$row['sat'];?></td>
        <?}
}
if(!$overall_sat){
    echo mysql_error();
}
?>