Для getimagesize (), какой правильный путь использовать для файла? В моем случае я предпочитаю абсолютный путь, но он дает ошибку, что нет файла, но когда я даю ему полный URL-адрес, нет ошибок, но нет и вывода. Изображения показывают, но не атрибуты getimagesize ().
Чтобы уточнить, изображения хранятся в базе данных с помощью сценария, извлекающего их и предоставляющего заголовки, которые в данном случае делают это изнутри foreach l oop, поскольку он вытягивает несколько изображений для динамического меню c. Я успешно делал это в прошлом на других сайтах, и этот код взят с одного из этих рабочих сайтов, поэтому не уверен, почему он не будет работать здесь!
Вопрос в том, каков правильный тип пути и почему не выводится?
Это (предпочтительно) выдает ошибки отсутствия изображения:
list($width, $height, $type, $attr) = getimagesize("/internals/viewers/show_image.php?ID=$MenuImage");
$imagetags = (!empty($attr)) ? $attr : "";
Это также не дает никаких атрибутов:
list($width, $height, $type, $attr) = getimagesize("http://domain.loc/internals/viewers/show_image.php?ID=$MenuImage");
$imagetags = (!empty($attr)) ? $attr : "";
Изображения, отображаемые с использованием :
echo "$MenuLink<img src=\"/internals/viewers/show_image.php?ID=$MenuImage\" alt=\"$MenuName\" title=\"$MenuDescription\" class=\"MenuTab\"$imagetags></a>\n";
Вот show_image. php:
<?php include $_SERVER ['DOCUMENT_ROOT'] . "/internals/configuration/common.php";
$ImageID = (isset($_GET['ID'])) ? $_GET['ID'] : "";
if (!$ImageID) die ("No image");
$sqlImage = "SELECT Image, ImageFormat FROM images WHERE ID='$ImageID'";
$rowImage = DBConnect($sqlImage, "Select", $siteDB);
if (!empty($rowImage)) :
$mime_type = $rowImage['ImageFormat'];
$SiteImage = $rowImage['Image'];
header("Pragma: no-cache");
header("Content-type: image/$mime_type");
echo $SiteImage;
imagedestroy($SiteImage);
endif; ?>