2014-03-12 59 views
0

我嘗試谷歌它,但是,我真的不明白這個查詢有什麼問題。這裏是代碼mysqli num rows and mysqli fetch array issue

include_once("includes/db_connection.php"); 
//Upit za prikaz pitanja! 
$listaPitanja = ""; 
$sql = "SELECT id, username, question FROM useroptions ORDER BY DESC"; 
$user_query = mysqli_query($db_connection, $sql); 
$pitanjaCount = mysqli_num_rows($user_query); //line 8 
if ($pitanjaCount > 0) { 
while ($row = mysqli_fetch_array($sql)) { //line 10 
$id = $row['id']; 
$question = $row['question']; 
$username = $row['username']; 
$listaPitanja .= '<div id="brojOdgovora">'.$id.'</div> 
      <div id="tekstPitanja"><h3>'.$question.'</h3></div> 
      <div id="userPitanja"><h6>'.$username.'</h6></div>'; 
    } 
} else { 
$listaPitanja = "There is no inserted questions!"; 
} 

此查詢不給我任何東西。只是這個錯誤mysqli_num_rows()期望參數1是mysqli_result,布爾在第8行的東西給出,如果我刪除ORDER BY DESC第10行有一些錯誤? 對不起,如果它重複,但我不知道解決這個問題!謝謝!

+0

可能重複的[PHP和MySQL:mysqli的\ _num \ _rows()預計參數1是mysqli的\ _result,布爾給出] (http://stackoverflow.com/questions/2546314/php-mysql-mysqli-num-rows-expects-parameter-1-to-be-mysqli-result-boolean) –

+0

試試Maarten van Middelaar的解決方案。 – segarci

回答

2

你的SQL語句沒有Order列:

$sql = "SELECT id, username, question FROM useroptions ORDER BY DESC"; 

與正確的列名進行更改:

$sql = "SELECT id, username, question FROM useroptions ORDER BY column_name DESC"; 

也許,mysqli_query正在恢復false代替mysqli_result對象。

1

要添加segarci,

$row = mysqli_fetch_array($sql) 

應該是

$row = mysqli_fetch_array($user_query) 
+0

你是對的人。 – segarci

+0

最受歡迎;-) –