MySQLI准备了失败的返回结果

时间:2014-03-27 10:53:03

标签: php mysqli

我已经尝试了数千个例子但是没有工作,我试图在特定行上获得结果,其中id =。

我的代码:

 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

我是如何正确地做到的?

2 个答案:

答案 0 :(得分:0)

fetch_assoc是mysqli_result类的一个方法,而不是mysqli_stmt类。

答案 1 :(得分:0)

fetch_assoc()mysqli_result的函数,而不是您尝试使用的$stmt资源。您需要将其分配给execute()

的返回值
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'];
        }
    }
 }