Получить изображение из базы данных и отобразить его на экране

Я использую phpmyadmin для создания моей базы данных. Я сохранил изображения в папке под названием «изображения». Путь к изображению хранится в базе данных.

Теперь я хочу получить изображение, соответствующее идентификатору, и отобразить его на экране.

Вот как я храню свое изображение.

function GetImageExtension($imagetype)
{
if(empty($imagetype)) return false;
switch($imagetype)  { 
 case 'image/bmp': return '.bmp';
 case 'image/gif': return '.gif';
 case 'image/jpeg': return '.jpg';
 case 'image/png': return '.png';
 default: return false;
  }
  }
 if (!empty($_FILES["uploaded_image"]["name"]))
   {
$file_name=$_FILES["uploaded_image"]["name"];
$temp_name=$_FILES["uploaded_image"]["tmp_name"];
$imgtype=$_FILES["uploaded_image"]["type"];
$ext= GetImageExtension($imgtype);
$imagename=date("d-m-Y")."-".time().$ext;
$target_path = "images/".$imagename;
if(move_uploaded_file($temp_name, $target_path)) {
$query="insert into users(images_path,submission_date,image_name)values('".$target_path."','".date("Y-m-d")."','$imagename')";

Теперь я хочу получить изображение и отобразить его на экране. Это код, который я написал:

 $connection = mysql_connect("localhost", "root", "");
  $db = mysql_select_db("project", $connection);
  $query = mysql_query("select * from users where _id= '$r'");
    $rows = mysql_num_rows($query);
  if ($rows == 1 ) {
  $row1=mysql_fetch_assoc($query);
  $image=$row1["images_path"];
  }

Что мне после этого написать, чтобы изображение отображалось?


person TeeKay    schedule 29.05.2016    source источник


Ответы (4)


Используйте изображение в теге изображения, как обычно, с URL-адресом изображения.

echo '<img src="/'.$image.'" alt="an image"/>';

Возможно, вам придется настроить путь к изображению относительно корня сайта, добавив перед ним /path/to/images/, если ваша папка «images» не находится в корне сайта.

person Chris    schedule 29.05.2016
comment
Это было так просто. Большое спасибо! - person TeeKay; 29.05.2016

Если после запроса вы получили правильный путь, вы можете использовать HTML-тег с параметром src= и переменной, содержащей путь к вашему изображению. Вам нужно знать название изображения, конечно

person m33ts4k0z    schedule 29.05.2016

Просто создайте изображение, используя $image в качестве атрибута SRC, а затем выведите его обратно следующим образом:

    <?php
        $connection = mysql_connect("localhost", "root", "");
        $db         = mysql_select_db("project", $connection);
        $query      = mysql_query("select * from users where _id= '$r'");
        $rows       = mysql_num_rows($query);

        $imgHTML    = "";   // INITIALIZE THE IMAGE HTML TO NOTHING SO THAT YOU CAN STILL ECHO THIS VARIABLE IF THERE IS NO IMAGE

        if ($rows == 1 ) {
            $row1       = mysql_fetch_assoc($query);
            $image      = $row1["images_path"];

            // JUST BUILD AN HTML REPRESENTATION OF YOUR IMAGE LIKE YOU WOULD IN NORMAL HTML BUT WITH PHP
            $imgHTML    = "<img alt='ALTERNATIVE_IMAGE_NAME' class='img_class' id='img_id' src='" . $image . "' />";
        }

        // NOW SIMPLY DISPLAY THE IMAGE.....
        echo $imgHTML;
person Poiz    schedule 29.05.2016

echo '<img src="'.$image.'"  />';

ИЛИ

echo '<img src="'.$yourWebsiteBaseURL.'/'.$image.'"  />';
person Manish Dhruw    schedule 29.05.2016