constrollo sulla visualizzazione delle immagini

Ciao a tutti,

ho bisogno di fare una modifica al modulo mostra.php che serve per visualizzare le immagini presenti in un db.

$query = "SELECT * FROM tabella_files_small WHERE id_ann = ".$_GET['id']; 

$risultato = @mysql_query($query) or die('Query non valida: ' . mysql_error()); 

$tmp = mysql_fetch_array($risultato); 

header('Content-Type: '.$tmp['tipo_file']); 

echo $tmp['dati_file'];

supponiamo che la query non sia valida perchè non ha trovato la foto corrispondente.  Come posso fare un controllo che se non mi trova la foto faccia la query così:

$query = "SELECT * FROM tabella_files_small WHERE id_ann = 1;

grazie mille

 :bye:

inviato 10 anni fa
stellina
X 0 X

ciao!

potresti inserire prima della query il controllo sulla variabile che gli passi per evitare che non esista o che non ci sia un valore assegnato. in questi casi gli metti il valore che vuoi tu.

if (!isset($_GET['id']) || $_GET['id']=='')  $id=1;

else    $id=$_GET['id'];

dopo fai la query con $id invece che con $_GET['id'].

 :bye:

risposto 10 anni fa
ro679
X 0 X

Oppure puoi controllare l'esito della query e magari ripeterla con un altro ID:

$query = "SELECT * FROM tabella_files_small WHERE id_ann = ".$_GET['id']; 

$risultato = @mysql_query($query) or die('Query non valida: ' . mysql_error()); 

$tmp = mysql_fetch_array($risultato);

if(!$tmp)

{

   // Non c'è nessuna immagine con quell'ID, prenderò un'altra immagine

   $query = "SELECT * FROM tabella_files_small WHERE id_ann = 1";

   $risultato = @mysql_query($query) or die('Query non valida: ' . mysql_error()); 

   $tmp = mysql_fetch_array($risultato);

}

header('Content-Type: '.$tmp['tipo_file']); 

echo $tmp['dati_file'];

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda