Programmazione Web » Php » Visualizzare un'immagine... solo se il campo di un database non è vuoto
Visualizzare un'immagine... solo se il campo di un database non è vuoto
Difficoltà:
Scritto da Michele Sassi
Sito Web: http://www.comefaccio.net ![]()
Questo tutorial è stato letto 1228 volte
In molte applicazioni web, specie nei guestbook e nei forum notiamo come alcuni utenti hanno, a fianco del loro username, il disegno di una casetta linkata alla propria home page e altri utenti no! La spiegazione è semplice: l'utente con la cesetta ha un sito web, quello senza no! La risposta è banalissima... ma non è questo che volevo spiegarvi :)
Vediamo la parte pratica. Chi ha avuto a che fare con un'applicazione simile saprà che è impossibile (senza adottare lo script che spiegherò tra un po') scegliere di visualizzare l'immagine se il campo del database è pieno o di non visualizzarla se questo è vuoto!
Creiamo pertanto uno script ad hoc per le nostre esigenze, supponendo di avere a che fare con un database (lascio a voi il compito della connessione) che dispone del campo 'sitoweb' e di avere accesso ai dati grazie al recorset 'dati_utente':
<?php
$sitoweb = $row_dati_utente['sitoweb']; //la variabile sitoweb corrisponde al campo sitoweb del database
if ($row_dati_utente['sitoweb'] != "")
{
//se questa variabile non è vuota stampo la casetta con il collegamento
echo "<a href=\"http://$sitoweb\"><img src=\"/images/home.jpg\" alt=\"Visita il sito dell'autore\" width=\"17\" height=\"17\" target=\"blank\" border=\"0\" /></a>";
}
else
{
echo ""; //altrimenti non visualizzo niente
}
?>
Come potete capire abbiamo innanzitutto stabilito che la variabile '$sitoweb' viene presa in input dal campo 'sitoweb' del database. In seguito abbiamo definito che se il campo 'sitoweb' non è vuoto viene stampata l'immagine della casetta (/images/home.jpg) con il link alla home page; in caso contrario non viene stampato niente.
L'html relativo all'inserimento dell'immagine linkata è stato creato grazie al comando echo di php. Abbiamo dovuto pertanto usare le cosiddette sequenze di escape scrivendo \" al posto delle sole " (virgolette).
Più difficile a dirsi che a farsi!

