2014-04-28 12 views
0

任何人都可以告訴我我在做什麼錯嗎?此代碼不會回顯任何內容。 我希望在urlslug字段中看到包含$tag的行數MySQL表中的行數?

<?php 

$query = mysqli_query($mysqli, "SELECT * FROM tags WHERE urlslug='$tag'"); 
$num_rows = mysql_num_rows($query); 
echo $num_rows; 

謝謝! :)

+3

這是不是找的行數,其中urlslug __contains__ $標籤;它正在查找urlslug列的確切值的行數__matches__ $正好標記爲 –

+0

您同時使用了'mysql_ *'和'mysqli_ *' – Ranjith

回答

-2

試試這個

$query = mysqli_query($mysqli, "SELECT * FROM tags WHERE urlslug='".$tag."'"); 
$num_rows = mysqli_num_rows($query); 
echo $num_rows; 
+0

這有什麼用? – tinybyte

+0

@tinybyte ..我覺得你沒有看到我編輯的答案。 –

1

試試這個

mysqli_num_rows($查詢)

2

這不是非常有效的表中選擇的一切,指望它,然後走了一遍扔掉它。你應該使用MySQL COUNT函數來計算行數:

$result = mysqli_query($mysqli, "SELECT COUNT(*) as numRows FROM tags WHERE urlslug='$tag'"); 
$data = mysqli_fetch_array($result); 
var_dump($data); 
+0

最佳答案imho。 – vonUbisch

0

試試這個

<?php 

$query = mysqli_query($mysqli, "SELECT * FROM tags WHERE urlslug='$tag'"); 
$num_rows = mysqli_num_rows($mysqli,$query); 
echo $num_rows; 

?> 
0

我與ANS @Sverri M.奧爾森的ANS Number of rows in a MySQL table?

當你COUNT(*)它需要在計數列索引,所以這將是最好的結果。使用MyISAM引擎的Mysql實際上存儲了行數,每次嘗試對所有行進行計數時,它並不會計算所有行。 (基於主鍵的列)

如果COUNT(*)速度較慢,則應該在查詢上運行EXPLAIN,並檢查索引是否真的被使用,以及它們應該添加到哪裏。

和+1 @Sverri M.奧爾森