Laboratorio di Sistemi Informativi
Il progetto AIRdb
AIRdb è l'applicazione di esempio sviluppata passo passo durante
il
corso di Laboratorio di Sistemi Informativi. Si tratta di un piccolo
database per una compagnia aerea, che consente di effettuare
prenotazioni on-line dei posti. Il progetto è stato sviluppato
solo a scopi didattici, e non ha assolutamente la pretesa di essere
utilizzabile: troppe sono le mancanze e le semplificazioni attuate.
Questa pagina contiene l'ultima versione di AIRdb.
Per poter far funzionare AIRdb, occorre prima di tutto creare il
database airdb e le
relative tabelle. Per far ciò, scaricare lo script airdb.sql
ed eseguirlo da un utente che abbia i privilegiati adeguati (ad esempio
dall'utente
root). Il metodo standard è dare il seguente comando dalla shell
del sistema operativo:
mysql -u root <
airdb.sql
Successivamente, bisogna creare gli utenti che l'applicazione utilizza
per connettersi al database. Come per i progetti d'esame,
l'applicazione usa due utenti:
- studente, senza
password, che ha i diritti di SELECT
su tutto il database airdb.
- studpriv, con
paswword prova, che ha
tutti i diritti concessi da ALL
PRIVILEGES sul database airdb.
Questi possono essere creati con i comandi che seguono, purché
eseguiti da un utente che abbia i diritti necessari.
grant select on airdb.* to
studente@localhost;
grant all privileges on airdb.*
to studpriv@localhost identified by 'prova';
Il file compresso airdb.tgz contiene tutti i
file PHP e HTML che implementano l'applicazione per l'interrogazione
del
database, la prenotazione online e l'aggiunta di nuovi voli. Le
operazioni di
aggiunta voli sono possibili solo se ci si autentica correttamente come
un dipendente della compagnia aerea. Per questo è possibile
usare i nomi utente ut1 e
ut2, con password
rispettivamente ut1 e ut2 (ovvero password e username
sono uguali).
Si noti che per alcuni voli non compaiono le disponibilità dei
posti. Questo è normale, e dipende dal fatto che la tabella posti è incompleta, per
cui di alcuni aerei non si hanno informazioni sui posti disponibili.