2014-03-27 89 views
0

我試過了數千個例子,但是沒有工作,我嘗試在id =的特定行上得到結果。MySQLI準備失敗的返回結果

我的代碼:

if ($stmt = $func->mysqli->prepare("SELECT * FROM monthlypaymentsrequestlist WHERE id = ?")) { 
     $stmt->bind_param('s', $user['userid']); 
     // Execute the prepared query. 
     $stmt->execute(); 
     $stmt->store_result(); 

    if($stmt->num_rows > 0) { 

     while ($rows = $stmt->fetch_assoc()) { 
       echo $row['id']; 
      } 


     } 


} 

的錯誤,我得到:

Fatal error: Call to undefined method mysqli_stmt::fetch_assoc() in 

我如何做正確?

+1

您正在學習哪個教程? –

+0

再次閱讀您的錯誤。 – Rikesh

+0

php.net,也有千其他的餡餅和例子,我不知道如何使它正常工作。 – Ravg

回答

0

fetch_assoc()mysqli_result的功能,而不是您試圖使用的$stmt資源。您需要將其分配給​​的退貨:

if($stmt = $func->mysqli->prepare("SELECT * FROM monthlypaymentsrequestlist WHERE id = ?")) 
{ 
    $stmt->bind_param('s', $user['userid']); 
    // Execute the prepared query. 
    $result = $stmt->execute(); 
    $stmt->store_result(); 

    if($stmt->num_rows > 0) 
    { 
     while($rows = $result->fetch_assoc()) 
     { 
      echo $row['id']; 
     } 
    } 
} 
+0

現在我得到了:調用非對象的成員函數fetch_assoc() – Ravg

+0

您確定您的查詢執行並返回結果嗎? – BenM

+0

我相信它的全部工作。如果我用mysql做同樣的事情,它會正常工作,但我想使用mysqli。 – Ravg

0

fetch_assoc是mysqli_result類的一個方法,而不是mysqli_stmt類。