sql >> Database >  >> RDS >> Mysql

hoe meerdere rijen van mysql naar json te coderen met php

Het probleem is dat de $output een array is waar je doorheen moet. Vind ik leuk:

function getTopic($conn){
    $response = array("error" => 0);
    $qry = "SELECT original_title, content, time FROM topic WHERE vis = 1";
    $result = $conn->prepare($qry);
    $result->execute();
    if($result->rowCount() > 0){
        $output = $result->fetchall();
        foreach ($output as $o){
           $response['text'] = $o['original_title'];
           $response['test'] = $o['content'];
        }
        return json_encode($response);
    }
}

Dit is voor de laatste reactie, maar als je alles wilt, doe dan:

function getTopic($conn){
    $response = array('error'=>0);
    $qry = "SELECT original_title, content, time FROM topic WHERE vis = 1";
    $result = $conn->prepare($qry);
    $result->execute();
    if($result->rowCount() > 0){
        $output = $result->fetchall();
        foreach ($output as $o){
           $response[] = array('text'=>$o['original_title'],'test'=>$o['content']);
        }
        return json_encode($response);
    }
}

Als je maar één rij wilt, voeg dan een limiet toe aan je MySQL-statement.



  1. Kan geen verbinding maken met MySQL 4.1+ met oude authenticatie

  2. Beste techniek voor het cachen van resultaten van zoekopdrachten die niet vaak veranderen

  3. Hoe kan ik OR-voorwaarde gebruiken in MySQL CASE-expressie?

  4. PostgreSQL MAAK TABEL