0

base64 でエンコードされたテーブル行から画像を取得しようとしています。それらをデコードして Web ページに表示する必要があります。どうしてもスライドショーにしたいのですが、それはまた別の話です!

これまでのクエリは次のとおりです

<?php

require("config.inc.php");

//initial query
// table name is pictures and table row is picture

$query = "Select * FROM pictures";

//execute query
try {
$stmt   = $db->prepare($query);
$result = $stmt->execute($query_params);
}
catch (PDOException $ex) {
$response["success"] = 0;
$response["message"] = "Database Error!";
die(json_encode($response));
}

// Finally, we can retrieve all of the found rows into an array using fetchAll 
$rows = $stmt->fetchAll();

if ($rows) {
    $response["success"] = 1;
    $response["message"] = "Photos Available!";
    $response["posts"]   = array();

    // only 3 rows in table - post_id, username, picture
    foreach ($rows as $row) {
        $post             = array();
        $post["post_id"] = $row["post_id"];
        $post["username"] = $row["username"];
        $post["picture"]    = $row["picture"];
        //update our repsonse JSON data
        array_push($response["posts"], $post);
    }

// echoing JSON response
echo json_encode($response);

} else {

    $response["success"] = 0;
    $response["message"] = "No Photos Available!";
    die(json_encode($response));
}

?>

問題はそれをデコードすることです。これがこれまでに示したものです

http://www.photosfromfriends.com/webservice/gallery.php

これは 1 つの写真 (投稿) のみです。テーブルには 50 枚の写真があり、それぞれを表示する必要があります (したがって、スライドショーが必要です)。これは私の頭をはるかに超えており、何か助けていただければ幸いです。

4

1 に答える 1

1

このコードを試してください。あなたのコードに従って正当化してください:

$data = json_decode($json, true);
//print_r($data);
$picture = base64_decode($data['posts'][0]['picture']);
header("Content-type: image/png");
echo $picture;

画像のデコードされたデータのみをデコードする必要があり、ヘッダーを使用することを忘れないでください

于 2013-07-30T22:29:32.910 に答える