ci sono due aspetti....
1) in generale per poter stampare tutti i risultati di una query, devi usare un ciclo sulvalore restituito da mysql_query.. usando mysql_fetch_row o un'altra funzione dalla famiglia mysql_fetch_*
2) in questo specifico caso non puoi stampare + immagini in un solo file php... perchè stai stampando un file binario con unsuo header.. e se stampi i bit di due immagini non escono due immagini.. ma un pasticcio (o un errore)... è come voler mettere 3 litri di vinoin una bottiglia da un litro e mezzo.....
Il modo corretto è questo:
fai una pagina che stampa UNA ed una sola foto... quale? quella che gli passi come id.
img.php?id=1
stampa la foto con id 1... e non fa nient'altro
img.php?id=2
stampa la foto con id 2... e non fa nient'altro
img.php?id=3
stampa la foto con id 3... e non fa nient'altro
a questo punto usi un'altra pagina php per ottenere dal database gli id delle foto che vuoi (quindi ad esmepio gli d di tutte le foto della categoria xyz.. ma solo gli id, non i dati), e richiami la pagina img.php per ogni id... in questo modo:
echo "<img src=\"img.php?id=$id\">";
in opratica per mostrare la foto 1 e la foto 2 farai...
echo "<img src=\"img.php?id=1\">";
echo "<img src=\"img.php?id=2\">";
Insomma, per mostrare tutte le foto della categoria "fiori" farai qualcosa del genere...
file categoria.php
-------
$query = "SELECT id FROM file_binari where Cat='fiori'";
$select = @mysql_query($query) or die("Query fallita !");
while($result = @mysql_fetch_array($select))
{
echo "<img src=\"img.php?id={$result['id']}\">";
}
-------
file img.php
-------
$query = "SELECT DatiBinari, Type FROM file_binari where id='{$_GET['id']}'";
$select = @mysql_query($query) or die("Query fallita !");
$result = @mysql_fetch_array($select);
Header("Content-type: {$result['Type']}");
echo $result['DatiBinari'];
-------
![]()