Читать несколько изображений PHP - PullRequest
0 голосов
/ 13 сентября 2011

У меня есть два отдельных файла, один для отображения изображения документа html / php, а другой - файл php, который отображает изображение с помощью функции content-type заголовка: image / jpeg.

Iпопытался использовать его с одним изображением, и он работает хорошо.Однако мне нужно отобразить несколько изображений.Как я могу это сделать?

В html / php doc есть тег img, указывающий на php-файл, который отображает изображение

echo "<image src=Image.php>";

image.php

$selectimage = mysql_query("SELECT Image from ImageTbl", $con);
if($selectimage)
{
header("Content-type:image/jpeg");
while($row = mysql_fetch_array($selectimage))
{
echo $row["Image"];
}
}

Ответы [ 4 ]

0 голосов
/ 13 сентября 2011

Если вы хотите отобразить количество разных изображений с помощью одного сценария, попробуйте добавить к имени сценария несколько уникальных хэшей (например, md5( microtime() ))

$seed = md5( microtime() );
echo '<image src="Image.php' . $seed . '">';
0 голосов
/ 13 сентября 2011

Вы не можете вывести все изображения вместе, потому что для браузера это будет выглядеть как данные нескольких изображений, собранных вместе, что бессмысленно.Кроме того, каждый тег изображения может отображать только одно изображение.Чтобы решить эту проблему, присвойте таблице изображений поле идентификатора для идентификации изображения.

Затем в файле, который выводит HTML, сделайте что-то вроде этого (передав идентификатор необходимого изображения):

echo "<image src='Image.php?id=1>";
echo "<image src='Image.php?id=2>";
echo "<image src='Image.php?id=3>";

И затем в файле, который выводит изображение, выполните:

$id = intval($_REQUEST['id']); // intval will validate the ID to be an int
$selectimage = mysql_query("SELECT Image from ImageTbl WHERE id=$id LIMIT 1", $con);
if ($selectimage) {
    $row = mysql_fetch_array($selectimage);
    if ($row) { // check if the image really exists
        header("Content-type:image/jpeg");
        echo $row["Image"];
    }
}
0 голосов
/ 13 сентября 2011

Используйте цикл foreach для циклического просмотра запрошенных записей и выводите их независимо от используемых вами тегов img.

На мой взгляд, это был бы лучший способ.

0 голосов
/ 13 сентября 2011

создайте два файла один для изображения, другой для извлечения строки следующим образом

image.php

$image_id = $_GET["id"];
header("Content-type:image/jpeg");
//query database to get only one image from id
echo $row["Image"];

другой файл

getimages.php

//query for image data
while($row = mysql_fetch_array())
{
     echo "<img src='image.php?id=$row[id]' />";
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...