簡體   English   中英

PHP,MySQL查詢始終返回1?

[英]PHP, MySQL Query Always Returning 1?

我知道表格中有多個結果,誰能告訴我我做錯了什么?

<?php
$con = mysql_connect("x","y","z");
if (!$con)
{
die(mysql_error());
}
mysql_select_db("mydatabase", $con);
$query = ("SELECT COUNT(*) FROM usersonline WHERE datetime > NOW() - INTERVAL 5 MINUTE");
$result = mysql_query($query);
$num_rows = mysql_num_rows($result);
echo $num_rows;
?>

結果mysql_num_rows 是一個,你只從數據庫中選擇一排,它恰好是比賽的條件的記錄數。 嘗試這個:

$query = ("SELECT COUNT(*) AS cnt FROM usersonline WHERE datetime > NOW() - INTERVAL 5 MINUTE");
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$num_rows = $row['cnt'];
echo $num_rows;

您正在使用不帶GROUP BY子句的聚合COUNT()函數。 它將折疊整個結果集並計算記錄數,因此您將獲得的只是一個1行1字段結果集。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM