sql >> Databáze >  >> RDS >> Mysql

Jak získat všechny kategorie produktů z mysql db přes php a vrátit pole json

Na straně php takto můžete získat pole kategorií a vytvořit json, pro připravené příkazy to můžete provést takto

$success = false;
try {

  $DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$success = true;
}
catch(PDOException $e) {
$response["success"] = 0;
$response["message"] = 'Connection failed: ' . $e->getMessage();
$response["data"]=null;
die(json_encode($response));
}

$query_categories = "SELECT category_name FROM categories";

try{

$sth = $sth->prepare($query_categories );
$success = true;

} catch(PDOException $e) {
$response["success"] = 0;
$response["message"] = 'Prepare failed: ' . $e->getMessage();
$response["data"]=null;
die(json_encode($response));
}

try{
$sth->execute();
$success = true;
} catch(PDOException $e) {
$response["success"] = 0;
$response["message"] = 'Execute failed: ' . $e->getMessage();
$response["data"]=null;
die(json_encode($response));
}

$categories = $sth->fetchAll(PDO::FETCH_COLUMN, 0);/* fetches all categories from db */

/* Output of $query_categories
Array
(
    [0] => cat1
    [1] => cat2
    [2] => cat3
    [3] => cat4
)
*/
/* json encode $query_categories 
["cat1","cat2","cat3","cat4"]
*/

/* check if categories exist or not*/
if(empty($categories)){
        $response["success"] = 0;
        $response["message"] = "No categories found";
        $response["data"]=null;
        die(json_encode($response));
        $connection = null; 

}

if($success) {
    $response["success"] = 1;
    $response["message"] = "Kylie";
    $response["data"]=$categories;
    die(json_encode($response));
    $connection = null;      
 /* output
 {"success":0,"message":"Kylie","data":["cat1","cat2","cat3","cat4"]}
 */
} else {
    $response["success"] = 2;/* don't where you are setting success to 2*/
    $response["message"] = "something went wrong";
    $response["data"]=null;
    die(json_encode($response));
    $connection = null;
}

} else {
        $response["success"] = 3;/* don't where you are setting success to 3*/
        $response["message"] = "Another brick in the wall";  
        $response["data"]=null; 
        die(json_encode($response));
        $connection = null;
}

Nejsem dobrý v javě, ale tady je odkaz Jak analyzovat JSON a převést jeho hodnoty na pole?

/* store json string in  the_json */
JSONObject myjson = new JSONObject(the_json);
JSONArray the_json_array = myjson.getJSONArray("data");

Datové objekty PHP



  1. Příkaz SELECT, který přiřazuje hodnotu proměnné, nesmí být kombinován s operacemi načítání dat

  2. java.sql.SQLException:ORA-00936:chybějící výraz

  3. limit záznamů pracovní plochy mysql

  4. Konfigurace databáze MySQL v samostatné třídě