まず、出力file_get_contents
から画像を保存する必要があります データベースに。そして、それをimagecreatefromstring
に入れます 画像を表示します。
これが簡単な例です。多分これはあなたを助けるでしょう:)
$data = file_get_contents("ACL.jpg");
$img = imagecreatefromstring($data);
header("Content-Type: image/jpeg");
imagejpeg($img);
編集:
このコードを入れるだけです:
$statement->bind_result($imageid, $title, $image)
while ($statement->fetch()) {
if ($image == NULL) {
echo "Image data does not exist!";
} else {
$img = imagecreatefromstring($image);
header("Content-Type: image/jpeg");
imagejpeg($img);
}
}
編集修正:
uploads.php
このファイルでは、$statement->bind_param('sb', $title, $content);
を変更する必要があります。 $statement->bind_param('ss', $title, $content);
になります
if (isset($_POST['submit'])) {
$title = $_FILES['image']['name'];
$data = $_FILES['image']['tmp_name'];
$content = file_get_contents($data);
$query = "INSERT INTO images (title, image) VALUES (?, ?)";
$statement = $databaseConnection->prepare($query);
$statement->bind_param('ss', $title, $content);
$statement->execute();
$statement->store_result();
$creationWasSuccessful = $statement->affected_rows == 1 ? true : false;
if ($creationWasSuccessful)
{
echo "Works!";
} else {
echo 'failed';
}
}
showimage.php
次に、これを使用して表示します:
$img = imagecreatefromstring($image);
header("Content-Type: image/jpeg");
imagejpeg($img);
最後のステートメントで
if (isset($_GET['id'])) {
$id = $_GET['id'];
$query = "SELECT id,title,image FROM images WHERE id = ?";
$statement = $databaseConnection->prepare($query);
$statement->bind_param('i', $id);
$statement->execute();
$statement->store_result();
if ($statement->num_rows >= 1)
{
$statement->bind_result($imageid, $title, $image)
while ($statement->fetch()) {
if ($image == NULL) {
echo "Image data does not exist!";
} else {
$img = imagecreatefromstring($image);
header("Content-Type: image/jpeg");
imagejpeg($img);
}
}
}
}
これもうまくいくことを願っています、私はそれをテストしました、そしてそれはうまく動きます... :)