num_rows应为>;时为0;0用于php mysqli代码
我的num_rows返回为0,我尝试了几种方法来调用它,但我被卡住了。这是我的密码:num_rows应为>;时为0;0用于php mysqli代码,php,mysqli,mysql-num-rows,Php,Mysqli,Mysql Num Rows,我的num_rows返回为0,我尝试了几种方法来调用它,但我被卡住了。这是我的密码: $conn = new mysqli($dbserver, "dbuser", "dbpass", $dbname); // get the data $sql = 'SELECT AT.activityName, AT.createdOn FROM userActivity UA, users U, activityType AT
$conn = new mysqli($dbserver, "dbuser", "dbpass", $dbname);
// get the data
$sql = 'SELECT AT.activityName, AT.createdOn
FROM userActivity UA, users U, activityType AT
WHERE U.userId = UA.userId
and AT.activityType = UA.activityType
and U.username = ?
order by AT.createdOn';
$stmt = $conn->stmt_init();
$stmt->prepare($sql);
$stmt->bind_param('s', $requestedUsername);
$stmt->bind_result($activityName, $createdOn);
$stmt->execute();
// display the data
$numrows = $stmt->num_rows;
$result=array("user activity report for: " . $requestedUsername . " with " . $numrows . " rows:");
$result[]="Created On --- Activity Name";
while ($stmt->fetch())
{
$msg = " " . $createdOn . " --- " . $activityName . " ";
$result[] = $msg;
}
$stmt->close();
找到了多行,fetch循环可以很好地处理它们。关于如何获取查询中返回的行数,有什么建议吗
非常感谢您的建议。提前感谢。在调用num_rows;之前,请尝试添加此项
$stmt->store_result()代码>在调用num_rows;之前,请尝试添加此代码
$stmt->store_result()
您需要先调用$stmt->store_result()
,就在$stmt->num_rows
之前,您需要先调用$stmt->store_result()
,就在$stmt->num rows
之前,我不知道这是否会解决问题,但在执行查询之前,您不能绑定_result
,如果我没弄错的话
还有您的while循环:
while ($stmt->fetch())
{
$msg = " " . $createdOn . " --- " . $activityName . " ";
$result[] = $msg;
}
循环的每次迭代都会丢失所有$msg
变量,最后一个设置除外,因为您需要执行$msg.=
或使$msg
成为一个数组$msg[]=
我不知道这是否会修复它,但在执行查询之前,您无法绑定结果,如果我没弄错的话
$stmt->store_result();
$numrows = $stmt->num_rows;
还有您的while循环:
while ($stmt->fetch())
{
$msg = " " . $createdOn . " --- " . $activityName . " ";
$result[] = $msg;
}
循环每次迭代都会丢失所有$msg
变量,最后一个设置除外,因为您需要执行$msg.=
或将$msg
设置为数组$msg[]=
$stmt->store_result();
$numrows = $stmt->num_rows;
检查这个:这个呢
检查这个:这个呢
请注意,我没有复制您的答案:)之前,您的答案提到将调用num_rows
作为方法而不是成员。然后在我回答之后你编辑了它。别生气!作为记录,我没有复制您的答案:)之前,您的答案提到将调用num_rows
作为方法而不是成员。然后在我回答之后你编辑了它。别生气!