如何查找使用stmt-> prepare()時查詢返回的行數;/stmt-> execute();
在我下面的例子中,如果我沒有得到任何結果,我想向用戶顯示一條好消息返回stmt-> execute()的總數
任何想法如何實現這一點?
感謝
編輯: 由@zerkms說,有一個解決方案,但是,我希望的是不緩衝整個結果的語句句柄設置一個解決方案...
....
$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
}
...
我讀過關於這種方法......但是,我希望有一個解決方案,它不會緩衝語句句柄中的整個結果集...我發佈我的問題的原因。如果沒有其他方法,我想我將沒有選擇緩衝結果集... – Marco
@Marco:1)爲什麼你沒有在問題中指定????? 2)如果您在問題中發佈的代碼中使用它,它不起作用嗎? – zerkms
@Marco ..但緩衝有什麼問題?如果他們在那裏,你會展示他們。如果什麼都沒有,那麼沒有什麼可以緩衝的。 –