2015-11-01 39 views
-1

如果我在sql查詢中使用!empty(),即使沒有返回行,它也不會說它是空的。例如!空的PHP函數不適用於SQL查詢

$result = $conn->query($sql_ideas); 
if (!empty($result)) { 
    while($row = $result->fetch_assoc()) { 
    $highlights[] = array($row["summary"], $row["detail"]); 
} 
-- Do stuff -- 
} 

它只是進行結果返回。我做錯了什麼或者有什麼方法可以解決這個問題?

+0

爲什麼你甚至需要檢查? –

+0

,因爲如果查詢返回值,我想完成一些HTML,如果它不去下一個查詢... –

+2

@StuartDurning這是行計數派上用場的地方。 – Script47

回答

2

假設你使用的是mysqli,你的結果對象實際上就是一個'mysqli結果' - 它本身就是一個類。檢查行數是否大於零將是要走的路。

http://php.net/manual/en/mysqli-result.num-rows.php

+0

謝謝!雖然我顯然很笨......但爲什麼這個錯誤呢...... 'if((mysql_num_rows($ result))> 0)'' –

+0

或者這個...''$ num_rows = mysql_num_rows($結果); \t \t if($ num_rows> 0){'' ...說'mysql_num_rows希望參數1是一個資源'**以前的評論意思是說爲什麼會出現這個錯誤。 –

+0

我只需要把它放在我的fetch_assoc()語句中。那謝謝啦! –