Несколько изображений GD на страницу

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

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

Я хочу создать несколько рандомизированных изображений на странице, но браузер сохраняет ресурс для изображения одинаковым для каждого вызова. Есть ли способ создать несколько случайных изображений на одной странице?

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

Снимок экрана :

http://img.ruphp.com/php/iMP59.png

Структура каталога :

index.php logo.png/ logo.png/circle.png logo.png/index.php 

index.php

 <html> <body style="background-color: #000000; color: #FFFFFF; font-family: 'Segoe UI'"> <?php for ( $i = 0 ; $i <= 10 ; $i++ ) { echo "<img src='logo.png' />"; } ?> </body> </html> 

logo.png / index.php

 <?php $im = imagecreatefrompng("circle.png"); $white = imagecolorallocate($im, 0xFF, 0xFF, 0xFF); $black = imagecolorallocate($im, 0x00, 0x00, 0x00); $x = imagecolorexact($im, 0xFF, 0xFF, 0xFF); $y = imagecolorexact($im, 0xCC, 0xCC, 0xCC); $z = imagecolorexact($im, 0xAA, 0xAA, 0xAA); $randx = mt_rand(0, 255); $randy = mt_rand(0, 255); $randz = mt_rand(0, 255); imagecolorset($im, $x, $randx, $randz, $randz); imagecolorset($im, $y, $randy, $randy, $randx); imagecolorset($im, $z, $randz, $randx, $randy); header('Content-Type: image/png'); imagepng($im); ?> 

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

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

 <?php for ( $i = 0 ; $i <= 10 ; $i++ ) { $postfix = mt_rand(0, 10000); echo "<img src='logo.png?random=$postfix' />"; } ?> 

обратите внимание, однако, что это делает изображения необработанными: GD будет запускаться заново каждый запрос. Но похоже, что это то поведение, которое вы хотите.