I campi di tipo "File"

Se, nei primi esperimenti di inserimento, avete provato a caricare sul server una foto relativa, probabilmente avete incontrato un messaggio d'errore che dice "I dati della pagina sono stati salvati, ma il file allegato non è stato registrato". La scheda del cantante è stata comunque registrata ma la foto non è stata salvata.

Dove sta il problema esattamente, e come lo si risolve?

Quando avete copiato la cartella delle immagini sul server, insieme alla pagina mastro, il vostro programma SFTP ha automaticamente creato una cartella in cui voi e soltanto voi potete aggiungere immagini. Quando Sar-At ha provato a infilare in quella cartella la foto del cantante, non ci è riuscito, perché… il Sar-At non è voi. Il server web ha rifiutato a Sar-At il permesso di scrivere qualche cosa in una cartella non sua.

Per rimediare, voi (che siete i proprietari della cartella) dovete concedere a Sar-At il diritto di metterci dentro alcuni documenti. Sar-At userà questo permesso solo per spostare nella cartella i file che voi gli passate quando create o editate una pagina.

Avviate il vostro programma di SFTP favorito. Fate clic con il tasto destro del mouse sulla cartella delle immagini. Nel menu che appare troverete una opzione relativa alle proprietà della cartella, o ai suoi permessi, o privilegi (la forma esatta del menu dipende dallo specifico programma SFTP che voi avete scelto).

Nella finestra che appare, e che sarà simile a quella riportata qui sotto (l'immagine è presa da Interarchy per Macintosh), spuntate la casella che permette ad "everyone" (tutti) di scrivere ("write") nella casella.

Non ci sono potenziali problemi di sicurezza in questo settaggio, anche se così potrebbe sembrare di primo acchito. Soltanto voi (attraverso SFTP) e Sar-At potete raggiungere la cartella immagini.

Se in futuro vi capiterà di visitare la cartella immagini usando SFTP, scoprirete che Sar-At cambia nome ai file che avete caricato. Questo avviene perché Sar-At deve garantire il buon funzionamento del sistema anche se più persone collaborano alla medesima sezione e se caricano, indipendentemente e in buona fede, documenti differenti ma che hanno lo stesso nome sui loro personali PC.

A questo punto potreste chiedervi cosa si scrive dentro la pagina mastro per far apparire in un certo punto l'immagine del cantante che abbiamo registrato nella base dati. La risposta è che per Sar-At un campo di tipo file non è diverso dagli altri.

Date una occhiata allo HTML della pagina mastro (se usate Dreamweaver, cliccate l'icona marcata con il simbolo "< >"). Noterete che l'immagine fissa, la foto di Aristide Palazzi che avevamo inserito dentro al fac-simile originale, veniva definita così:

    <img src="images/pallazzi.jpg" alt="{nome} {cognome}" />

In altre parole, lo HTML prevede che voi scriviate <IMG SRC= e poi il nome del documento con l'immagine. Per lasciare che sia Sar-At a gestire la fotografia che memorizziamo nel campo "foto" della base dati noi useremo semplicemente:

    <img src="{foto}" alt="{nome} {cognome}" />

Se usate Dreamweaver per creare le vostre pagine web, fate attenzione. Quel programma tende a trasformare lo HTML che abbiamo appena impostato, sostituendo le parentesi graffe con i loro codici, così:

<img src="%7Bfoto%7D" eccetera. Quando questo accade, Sar-At non riconosce più la presenza delle parentesi graffe, non inserisce l'informazione presa dalla base dati al suo posto… e la foto non appare!

La creazione dei campi di tipo File a volte crea una situazione tipo… uovo e gallina. Voi state definendo una sezione come quella dei cantanti lirici e arrivate al punto in cui digitate nome e descrizione del campo fotografia. Arrivati al punto di scegliere la cartella in cui le foto vanno stoccate, però, vi rendete conto che è appropriato creare una nuova cartella dedicata. Potete certo andare sul server e creare immediatamente questa cartella, ma quando tornate al browser e cliccate il menu a discesa con tutti i nomi delle cartelle comunque non ci troverete il nome della cartella appena creata, perché il menu è stato disegnato da Sar-At prima che voi creaste la cartella. Per risolvere l'impasse, Sar-At 7 introduce l'icona reload, che ha l'aspetto del pianeta Terra circondato da frecce verdi che si inseguono. Cliccate l'icona: il menu con i nomi delle cartelle disponibili viene ricreato senza che il resto della pagina si ridisegni e dunque senza che dobbiate reintrodurre gli altri dati.