簡體   English   中英

mysqli_num_rows無法正常工作

[英]mysqli_num_rows is not working

此代碼的主要問題是什么? 在測試SELECT計數(獲勝者)時AS NUM FROM subscription_user WHERE獲獎者='是'並且hitdate = CURDATE()此代碼在數據庫sql中的sql中
它顯示num為3,但下面的代碼僅顯示應為3的1。

$link = mysqli_connect("localhost", "root", "", "bot");
$count_winner=mysqli_query($link,"SELECT count(winner) AS num FROM 
subscribe_user WHERE winner ='yes' AND hitdate=CURDATE()")or 
 die(mysql_error());
$w=mysqli_num_rows($count_winner);
echo $w;

您所看到的是預期的。 mysqli_num_rows給出結果中的行數1 結果中的num字段顯示count(winner) 3 這些是不同的指標。

但是我想打印3個數據庫SQL。 我怎樣才能做到這一點?

而不是獲取mysqli_num_rows ,而是實際讀取結果:

$result = mysqli_query('...') or die('...');    
$w = $result->fetch_assoc()['num'];

另外, mysql_error()不能與mysqli_ api混合使用。 它應該是mysqli_error() ,並將連接作為其(單個)參數傳遞。

參考:

$link = mysqli_connect("localhost", "root", "", "bot");
$count_winner = mysqli_query($link,"SELECT count(winner) AS num FROM subscribe_user WHERE winner ='yes' AND hitdate=CURDATE()") or mysqli_error($link));
$row = mysqli_fetch_array($count_winner);
echo $row['num']; //Will output the count of number of winners

mysqli_num_rows()函數返回結果集中的行數。

暫無
暫無

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

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