如何根据ID列(预准备语句)计算表中的行数?

时间:2012-06-04 21:36:12

标签: php mysql pdo

我有一个数组填充了一个表中的记录,并希望计算另一个表中的相应记录并将其插入到数组中。

当我尝试此代码时,我不断收到此错误

  

警告:mysqli :: prepare()[mysqli.prepare]:必须在新语句准备发生之前获取所有数据

foreach ($persons as $i=>$person)
{ 
    $stmt = $mysqli->prepare("SELECT COUNT(*) FROM order WHERE personId = ?");
    $stmt->bind_param("i", $person['personId']);
    $stmt->execute();
    $stmt->bind_result($totalOrders);
    $stmt->fetch();
    $stmt->close;       
    $persons[$i]['totalOrders'] = $totalOrders;
}

好像$stmt->close;被忽略了。

1 个答案:

答案 0 :(得分:1)

您需要添加括号来调用close方法:

$stmt->close();