簡體   English   中英

如何從SQL請求接收多個結果

[英]How to receive multiple results from sql request

我有查詢MySQL數據庫的PHP代碼,並以對象數組的形式返回一些正確的信息。

但是,應該有多個結果,數據庫中有幾行與查詢匹配。

我已經嘗試過使用while循環,其中嵌套有一個foreach,但是我無法使其正常工作。

$stmt = $conn->prepare("SELECT * FROM planning WHERE intervenant = :id AND date = :date");
$result = $stmt->execute([':id' => $id, ':date' => $date]);

if ($stmt->rowCount() > 0) {
    $output = array();
    $output = $stmt->fetch(PDO::FETCH_ASSOC);
    echo json_encode($output);
} else {
    $errors = "No data found for this date";
    echo json_encode($errors);
}


WHILE LOOP THAT I TRIED TO USE WITHIN IF PART OF CODE ABOVE

while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
    foreach ($row as $key => $output) {
    echo json_encode($output);
}

因此,我希望代碼返回幾個數組,每個數組包含查詢的數據。

使用有效的代碼,我只會返回一個對象數組。

嘗試while循環時,出現“未捕獲的錯誤:在布爾值上調用成員函數fetch()”。

請任何幫助表示贊賞。

代替:

while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
    foreach ($row as $key => $output) {
    echo json_encode($output);
}

嘗試:

$output = $result->fetchAll(PDO::FETCH_ASSOC);
echo json_encode($output)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM