Php 返回stmt的总计->;执行()

Php 返回stmt的总计->;执行(),php,mysqli,Php,Mysqli,使用stmt->prepare();/stmt->execute() 在我下面的例子中,如果我没有得到任何结果,我想向用户显示一条好消息 有什么办法可以做到这一点吗 谢谢 编辑: 正如@zerkms所说,有一个解决方案,但我希望有一个解决方案不会在语句句柄中缓冲整个结果集 有一种方法可以做到这一点:我已经读过关于这种方法的书。。。但是,我希望找到一种解决方案,它不会在语句句柄中缓冲整个结果集。。。我发布我的问题的原因。如果没有其他方法,我想我将别无选择,无法缓冲结果集…@Marco:1)你为什

使用stmt->prepare();/stmt->execute()
在我下面的例子中,如果我没有得到任何结果,我想向用户显示一条好消息

有什么办法可以做到这一点吗

谢谢

编辑: 正如@zerkms所说,有一个解决方案,但我希望有一个解决方案不会在语句句柄中缓冲整个结果集


有一种方法可以做到这一点:

我已经读过关于这种方法的书。。。但是,我希望找到一种解决方案,它不会在语句句柄中缓冲整个结果集。。。我发布我的问题的原因。如果没有其他方法,我想我将别无选择,无法缓冲结果集…@Marco:1)你为什么不在问题中具体说明?????2) 如果你在问题中发布的代码中使用它,它不起作用吗?@Marco。。但是缓冲有什么问题呢?如果它们在那里,你将展示它们。如果没有缓冲区,那么就没有缓冲区。@zerkms:很抱歉。。我同意,我应该在我的原稿中说明这一点question@Marco:无论如何,我同意菲尔:你能解释一下你在使用缓冲区时遇到了什么问题吗?
$selected_disc = array(1=>'disc1', 2=>'disc2', 3=>'disc3');

// show tracks for each disc in album
$sql = 'SELECT track_id, name FROM album WHERE album_id = ?';

foreach ($selected_disc as $key => $disc) {

    $stmt->prepare($sql);
    $stmt->bind_param('i', $key);
    $ok = $stmt->execute();
    $stmt->bind_result($trackid, $name);

    if( VALUES FOUND, SHOW !) {

        while ($stmt->fetch()) {
            echo $t_name;
        }

    } else {
        echo 'Nothing to display... blablabla';
    }

    $stmt->free_result(); // free the database resources for other queries
}
...
/* execute query */
$stmt->execute();

/* store result */
$stmt->store_result();

printf("Number of rows: %d.\n", $stmt->num_rows);