Michele Sassi
a- a+

Cambiare il banner in base alla pagina

Con la lezione di oggi capiremo come molti siti, speciequelli articolati in più sezioni, riescano agestire il banner a seconda della paginarichiesta dall'utente. Si tratta di un'applicazionemolto utile che permette all'utente di visualizzarebanner diversi, mantenendo perfettamente identico il restodella struttura.

Supponiamo di avere un sito articolato in molte pagine tutteuguali e, tra queste, anche 'chat.php','guestbook.php' e 'forum.php'. Vogliamodistinguere le pagine in questione dalle altre cambiandone illogo. Vi chiedete come questo sia possibile? Semplicissimo.

Useremo il classico operatore di scelta multipla(switch) e la variabile serverPHP_SELF che ci permette di ricavare ilnome e la posizione sulserver della pagina. Ci procureremo a priori quattroimmagini da inserire nella cartella "images"chiamandole chat.gif, guestbook.gif, forum.gif ed ovviamenteuna generale chiamata banner.gif.

Gestiremo questi casi facendo in modo che se l'utenteapra la pagina del forum (forum.php) visualizzeremo il logodel forum; lo stesso dicasi per la chat ed il guestbook. Nelcaso in cui l'utente non richieda una di queste trepagine bensì un'altra (curriculum.php, adesempio), visualizzeremo un'immagine di default chiamatabanner.gif. Mettiamoci al lavoro: cominciamo con il salvarequesto codice in una pagina chiamata"gestione_banner.php":

<?php$currentPage = $_SERVER["PHP_SELF"]; //recupero il nome della paginaswitch($currentPage) {//pagina della chatcase '/chat.php':echo "<img src="/images/chat.gif" width="468" height="60" alt="La mia chat">";break;//pagina del guestbookcase '/guestbook.php':echo "<img src="/images/guestbook.gif" width="468" height="60" alt="Leggi il mio guestbok">";break;//pagina del forumcase '/forum.php':echo "<img src="/images/forum.gif" width="468" height="60" alt="Il mio Forum">";break;//tutte le pagine tranne quelle su indicatedefault:echo "<img src="/images/banner.gif" width="468" height="60" alt="Sassidesign.it">";break;}?>

Sarà di vitale importanza richiamare all'internodi ogni singola pagina questo codice nel punto in cui sivoglia visualizzare il banner:

<?php include("gestione_banner.php"); ?>

N.B.: Per questioni di ordine del layout è opportunolavorare con banner di uguali dimensioni. Il codice èabbondantemente commentato e non necessita di ulteriorichiarimenti.