Facoltà di Ingegneria STUDIO E SVILUPPO DI UN APPLICAZIONE MOBILE CON L UTILIZZO DEL BROWSER LAYAR

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Facoltà di Ingegneria STUDIO E SVILUPPO DI UN APPLICAZIONE MOBILE CON L UTILIZZO DEL BROWSER LAYAR"

Transcript

1 UNIVERSITÀ DEGLI STUDI DI SIENA Facoltà di Ingegneria Corso di Laurea in INGEGNERIA INFORMATICA STUDIO E SVILUPPO DI UN APPLICAZIONE MOBILE CON L UTILIZZO DEL BROWSER LAYAR Referente: Prof. Marco Maggini Elaborato di: Davide Privitera Anno accademico 2011/2012

2 Introduzione Ai giorni d oggi, l avvento e il consolidamento dell uso della tecnologia, ha portato degli stravolgimenti notevoli sul nostro modo di vivere quotidiano, a tal punto che, oltre al mondo reale, è possibile distinguere, con una linea sempre meno definitiva, una realtà virtuale composta da elementi generati dai calcolatori. Ciò che sta maggiormente contribuendo ad assottigliare la linea di demarcazione tra realtà effettiva e realtà virtuale, prende il nome di Realtà Aumentata. Grazie ad essa, infatti, è possibile unire entrambe le realtà, sovrapponendo a ciò vediamo con i nostri occhi degli elementi virtuali elaborati da un software. Questa tesi si propone di descrivere brevemente le caratteristiche di questa tecnologia e implementare un progetto che ne faccia uso. La prima parte del lavoro è dedicata alla descrizione della Realtà Aumentata e di quali sono le diverse tecnologie che ci permettono di implementarla; si passa poi ad una descrizione degli strumenti che abbiamo a disposizione per poter sviluppare applicazioni che ne facciano uso ed infine si descrive ciò che abbiamo voluto sviluppare e di come si è svolto il processo di sviluppo del software per il Consorzio operativo della banca M.P.S.; in particolar modo andremo a creare un livello per il noto browser Layar, tramite il quale sarà possibile visualizzare informazioni storiche e pubblicitarie sulle filiali M.P.S. presenti sul territorio senese.

3 Realtà Aumentata La Realtà Aumentata (o AR, dall inglese Augmented Reality) è una combinazione di una scena reale vista dall osservatore e di una scena virtuale generata dal computer che aumenta la scena iniziale con informazione aggiuntiva [1]. Lo scopo finale, è quello di creare un sistema nel quale l utente non sappia cogliere la differenza tra il mondo reale e la versione aumentata dello stesso, in quanto entrambe le realtà coesistono nella maniera più armoniosa possibile. Il termine Realtà Aumentata venne coniato agli inizi degli anni 90, quando i due ricercatori Tom Caudell e David Minzell, al lavoro su un prototipo che rimpiazzasse gli strumenti di bordo di un aereo, svilupparono un congegno indossabile sul viso dei piloti in grado di visualizzare velocemente la rotta e tutte le informazioni correlate ai decolli e agli atterraggi [2]. Di lì a pochi anni, lo sviluppo di questa tecnologia fu un crescendo e portò alla creazione di diverse realtà, come ad esempio ARToolKit, la prima applicazione di realtà aumentata che, usando il Video Tracking, permetteva di posizionare una camera virtuale nella stessa posizione del punto di vista dell osservatore e aggiungere informazioni in sovraimpressione [3]; o ancora ARQuake, una versione del videogioco Quake basata sempre sulla Realtà Aumentata [4]. Nel 2008 è stato lanciato Wikitude, un software che consente di visualizzare sul proprio cellulare le informazioni pubblicate da altri utenti su Wikipedia e riferite al sito turistico in cui si trovano [5]. Nel 2009 ARToolKit è stato integrato con Flash, portando la realtà aumentata su browser in modo da poterla sperimentare, oltre che nei moderni smartphone, anche nel web. Nel corso dell'ultimo ventennio, sono state introdotte diverse definizioni di Realtà Aumentata. In generale, possiamo dire che esistono due correnti di pensiero: quella dei ricercatori che definiscono la Realtà Aumentata come un ramo della Realtà Virtuale e quelli che sostengono il contrario.[6][7] Si parla di realtà virtuale (VR) in riferimento a tutte quelle tecniche che permettono di indurre esperienze sensoriali di luoghi e oggetti, reali o immaginari, che vengono simulati per mezzo di tecnologie informatiche, dunque in definitiva si parla di una realtà totalmente simulata. Lo scopo della Realtà Aumentata, invece, non è quello di sostituire il mondo reale, ma di estenderlo. L aggettivo Augmented, sta a definire proprio l aumento del livello di conoscenza offerto all utente sulla realtà circostante [8], in quanto il soggetto riesce a percepire e riconoscere l ambiente in cui si trova (Fig. 1a), senza provare disorientamento, come avviene invece nel caso della VR (Fig. 1b). Uno degli svantaggi della VR è che richiede strumenti hardware capaci di

4 gestire pesanti modelli 3D e che può generare la sensazione di irreale da parte dell utente, essendo basata sulla creazione di ambienti puramente sintetici. (Fig. 1a) (Fig. 1b) Recentemente è stato evidenziato attraverso un grafico, che la separazione tra mondo reale e virtuale non è così netta, ma esiste una zona intermedia chiamata Mixed Reality (Fig. 2). (Fig. 2) Si tratta del grafico chiamato Reality-Virtuality Continuum [9][10], dove è possibile osservare come mondo reale (Real Environment) e mondo totalmente virtuale (Virtual Environment) siano ai due estremi del Continuum; in mezzo a questi due però vi sono alcune variazioni, ovvero L Augmented Reality (AR), che si trova nella parte sinistra della MR, in quanto in essa il mondo reale è predominante rispetto a ciò che viene aggiunto artificialmente e l Augmented Virtuality (AV, Virtualità Aumentata), che si trova più vicina alla VR, e caratterizza quei sistemi che, fatta eccezione per qualche immagine presa dalla realtà, sono in prevalenza virtuali. Con la nascita della Realtà Aumentata, stanno gradualmente andando a diminuire le applicazioni di Realtà Virtuale e di Virtualità Aumentata, dal momento che si rileva sempre più conveniente usare le informazioni digitali per arricchire il nostro mondo piuttosto che sostituirlo completamente da ambienti sintetici.

5 Oltre all utilizzo in settori tecnici, l AR viene anche sfruttata in applicazioni alla portata di tutti. Grazie a questa tecnologia possiamo, ad esempio, sfruttare il nostro smartphone per ottenere, in tempo reale, informazioni sul luogo e sugli edifici che ci stanno davanti, semplicemente puntando la videocamera integrata, o, ancora, ottenere indicazioni applicate alla strada che vediamo davanti, per raggiungere un luogo specificato. Quest ultimo esempio di combinazione tra realtà virtuale e reale, offre agli utenti delle informazioni molto più esaustive e facili da interpretare rispetto a un qualunque navigatore satellitare, perché permette loro di muoversi nell ambiente reale e visualizzare le informazioni sullo stesso livello, senza dover consultare una cartina virtuale su un altro dispositivo [11].

6 Creazione di un sistema di AR Come abbiamo già detto, la Realtà Aumentata permette di aggiungere elementi a quella che altrimenti sarebbe pura e semplice realtà visibile con i nostri occhi; È possibile visualizzare poi questo contenuto virtuale aggiuntivo attraverso un dispositivo Mobile, come un telefonino di ultima generazione (Iphone o telefono Android), oppure attraverso la webcam di un computer o degli occhiali specifici. Gli oggetti virtuali che vediamo in sovraimpressione sono interattivi, ovvero possono eseguire movimenti e animazioni in risposta alle azioni umane. Tutto ciò è possibile grazie ad un software che elabora le immagini del mondo reale e, fissando dei punti geometrici nello spazio, aggancia la realtà virtuale che andrà ad aumentare quella reale. A questo proposito, ricopre un ruolo fondamentale per il corretto funzionamento di queste applicazioni, la fase di monitoraggio e localizzazione della posizione. In linea generale, le applicazione di tipo AR vengono sviluppate in quattro diverse fasi: Tracking, Registrazione, Visualizzazione e Rendering [12]. Il Tracking permette di tracciare la posizione dell osservatore rispetto alla scena, la Registrazione, poi, permette di sovrapporre al modello reale quello artificiale. La Visualizzazione, si occupa di individuare il dispositivo con il quale l utente vuole vedere la Realtà Aumentata, ad esempio, nel nostro caso, tramite un IPhone. Il Rendering, infine, sovrappone concretamente le due realtà, cercando di prediligere due fattori che sono: la qualità dell immagine e la velocità di aggiornamento. Una volta fatto questo, il passo successivo è l interattività dell applicazione che dipende nettamente dal dispositivo che utilizziamo e che ci consente di interagire attivamente con la scena che ci viene presentata. Fase di Tracking Esistono diverse tecniche di Tracking, le più conosciute si basano sui Marker o sulla combinazione tra GPS e bussola. La prima viene maggiormente utilizzata per piattaforme Desktop Computer, si tratta di marcatori stampati in bianco e nero che, una volta posizionati nel sito di interesse, vengono individuati facilmente da uno specifico software che a sua volta genererà la realtà virtuale partendo proprio dai marcatori stessi (Fig. 3).

7 (Fig. 3) Come si evince dall immagine, le coordinate del mondo virtuale vengono generate prendendo come centro il marcatore e generando gli assi cartesiani di conseguenza. Uno dei maggiori vantaggi di questa soluzione sta nel fatto che se il marker viene spostato, tutto l oggetto virtuale si sposta di conseguenza, senza dover modificare nient altro, inoltre questa soluzione è molto precisa, rispetto alle altre tecniche. Questo tipo di approccio ha avuto successo grazie ai costi contenuti, alla velocità con la quale si riesce ad avere un sistema di tracking tridimensionale e infine grazie all implementazione di questo metodo in librerie software gratuite, le ARToolkit [3]. La seconda tecnica di Tracking, che prevede l utilizzo del GPS e della bussola integrata nel nostro dispositivo è una soluzione applicata maggiormente nel campo delle piattaforme Mobile [13]. In questo caso, il software ha dei punti di interesse memorizzati in un database e, una volta che l utente si trova nei pressi di questi punti, il software genera in sovraimpressione le informazioni specifiche. I problemi di questa soluzione sono legati alla scarsa precisione dovuta al GPS (± 10 metri) e alla possibile mancanza di copertura del servizio in alcune zone. Inoltre, se l ambiente reale cambia, dovranno essere prese in considerazione delle eventuali modifiche anche nelle informazioni virtuali ad esso collegate. Fase di Registrazione La fase di Registrazione è una delle più complesse ed elaborate in quanto, come è già stato detto, si occupa di rendere gli oggetti digitali perfettamente integrati nell ambiente circostante, tenendo di conto di quelle che sono le effettive distanze della scena reale e calcolandone le giuste proporzioni. Questo tipo di problema, prende forma soprattutto quando si tratta di applicazioni che devono essere molto precise, vedi ad esempio software dedicati ad operazioni chirurgiche. In questi casi, è

8 essenziale avere un ottima sovrapposizione delle immagini sia quando ciò che si guarda è fermo e sia quando è in movimento. A questo proposito, la fase di Registrazione è normalmente affetta da errori [14], che possiamo suddividere generalmente in due tipologie: Statici: come si evince dalla parola stessa, sono errori che si presentano quando l immagine che stiamo puntando è ferma. Possono essere causati da difetti delle lenti, errori di allineamento nella fase di tracking o errori di mapping dell ambiente reale circostante. Dinamici: avvengono quando l utente o l ambiente si muovono producendo un disallineamento temporaneo tra il sistema virtuale e quello reale. Questo tipo di errori è chiaramente indipendente dalla registrazione statica. E possibile infatti avere un sistema che abbia un ottima registrazione statica ma una pessima registrazione dinamica e che quindi produce effetti poco realistici quando il sistema subisce delle variazioni. Per cercare di ridurre questo tipo di errore si può intervenire su diversi fattori, in particolare il system lag, ovvero ridurre il più possibile il ritardo tra l acquisizione delle immagini e la proiezione degli oggetti, oppure ridurre il ritardo di rendering o ancora meglio cercare di predire la posizione futura dell oggetto che si sta muovendo. Fase di Visualizzazione Riguardo al processo di Visualizzazione, possiamo prendere in considerazione tre metodologie differenti: Monitor based, Optical see through e Video see through [15], le ultime due, come vedremo, si basano sull utilizzo di visori HMD (Head Mounted Display) e dunque garantiscono un risultato molto realistico. Monitor based: è la tecnica più semplice e consiste nel visualizzare su di un monitor la scena vista dalla webcam sovrapposta alla scena virtuale generata dal calcolatore che può essere un PC, un laptop, o gli smartphone di ultima generazione. Questo tipo di approccio presenta dei limiti funzionali, primo fra tutti le basse prestazioni grafiche e quindi la lentezza ad elaborare velocemente le immagini. Altro limite, non indifferente, è dovuto al fatto che se l utente si muove deve spostare anche il monitor da cui osserva la scena. (Fig. 4a) Optical see through: è una tecnica che fa apparire in sovraimpressione su degli specchi traslucidi informazioni, grafici e scritte. (Fig. 4b) Video see through: in questo caso si utilizzano due telecamere, una per ciascun

9 occhio, che acquisiscono le immagini e le inviano all occhio dell utente mediante due display. Attraverso queste tecnica è possibile realizzare effettivi visivi molto più realistici e complicati. (Fig. 4c) I primi due metodi hanno un notevole svantaggio nel ritardo di proiezione dell immagine sul monitor ma hanno il vantaggio che la fase di registrazione è semplificata; nel metodo ottico, invece, quest ultima deve essere acquisita utilizzando dei sensori montati sui visori che ne complicano notevolmente la struttura. (Fig. 4a) (Fig. 4b) (Fig. 4c)

10 Stato dell arte Layar Col passare del tempo, sono stati sviluppati molti strumenti che ci permettono di creare facilmente applicazioni per smartphone che fanno largo uso della realtà aumentata. Uno di questi, con il quale svilupperemo il nostro progetto, è Layar, un browser che ci mette a disposizione la parte di interfaccia quasi preconfezionata [16]. Sviluppato dalla SPRXmobile, è uno dei browser più diffusi dall alto dei suoi 3 milioni di utenti e una comunità di sviluppatori molto attiva in Rete. Inizialmente disponibile solo per Android, col tempo sono state sviluppate anche librerie per IPhone, che nonostante un primo ritiro dall Apple Store per alcuni bug, oggi risulta molto affidabile. Layar offre una serie di livelli che possiamo scegliere dai menù Popular e Featured o ancora dai risultati di una ricerca locale per parole chiave o da un database. Una volta scelto questo filtro (layer), il browser ci permette di inquadrare l ambiente a noi circostante e ci offre informazioni su di esso in base al layer tematico scelto; dunque, ad esempio, potremo avere informazioni su negozi, ristoranti sfruttando servizi come Wikipedia o Google local search; Oltre alle opzioni visibili a seconda dei livelli scelti, esiste una scelta costante data dal pulsante Take me there, grazie al quale è possibile accedere direttamente a Google Maps, e ricevere automaticamente le informazioni per raggiungere il sito desiderato. I diversi livelli tematici o Layers sono scaricabili dalla rete sia gratuitamente che a pagamento.

11 Librerie per Applicazioni Stand Alone Per poter funzionare, un browser ha bisogno di far riferimento ad alcune librerie, necessarie per creare un applicazione di AR. Tra le più importanti, ricordiamo essenzialmente le già menzionate librerie ARToolKit, che permettono di calcolare in tempo reale la posizione e l orientamento di una videocamera rispetto a dei markers [3]. Tali librerie per PC sono state poi modificate, risolvendo principalmente problemi legati alla gestione della memoria, per consentirne un uso anche su PocketPC. La prima versione fu sviluppata da Dr. Hirokazu Kato dell'università di Osaka (Giappone), e poi sono state supportate dal HIT Lab dell'università di Washington e dal HIT Lab NZ dell'università di Canterbury, Nuova Zelanda. La diffusione di queste librerie è stata agevolata dalla codifica di versioni per sistemi operativi quali Linux, MacOS e Windows complete di codice sorgente. Al sistema di riferimento associato al marker planare viene associato un oggetto virtuale, realizzato in precedenza ed importato nell applicazione. Lo sfondo del flusso video, coincide con quello acquisito dalla telecamera ed è congruente con la percezione visiva dell osservatore. Gli oggetti virtuali da inserire nella scena, sono visualizzati utilizzando l ambiente grafico della libreria OpenGl (libreria che rappresenta lo standard industriale per lo sviluppo di applicazioni grafiche che necessitano di alte prestazioni in termini di qualità e capacità di rendering). Le prerogative delle ARToolKit sono la semplicità e la flessibilità d'impiego. Tecnicamente risolvono il problema del Tracking dell'osservatore utilizzando algoritmi di calcolo propri della Computer Vision e calcolando, in real time, la posizione reciproca tra marker e camera elaborando i fotogrammi di un flusso video. Gli algoritmi di calcolo implementati nelle ARToolKit sono: - La calibrazione della camera; - L elaborazione ed estrazione, dalle immagini digitali, delle geometrie fiduciali; - La stima della posizione; - La sovrapposizione di oggetti virtuali ai fotogrammi digitali

12 Il progetto Analisi del problema L utilizzo della Realtà Aumentata permette, come abbiamo visto, di ampliare sostanzialmente le potenzialità dei nostri dispositivi quali computer e smartphone. Nella nostra analisi, abbiamo pensato di sviluppare un applicazione che, usando questa tecnologia, ci permettesse di ottenere informazioni sulle filiali M.P.S. dislocate sul territorio. In particolare, essendo che quest ultime talvolta sono situate in edifici di valenza storica, si è voluto dare la possibilità agli utenti di ottenere informazioni, oltre che sulla singola filiale, anche sul luogo dove essa è posta. Il software in questione, deve dare la possibilità all utente di visualizzare, tramite la videocamera integrata nei dispositivi, le filiali M.P.S. presenti nelle immediate vicinanze, insieme alle relative informazioni di ciascuna, come ad esempio: contatti telefonici, e informazioni anagrafiche. Deve essere possibile definire il range di distanza oltre il quale non vogliamo più rilevare le filiali intorno a noi e se una di queste si trova in un edificio storico, vogliamo poter visualizzare informazioni specifiche a riguardo. Sviluppare un applicazione di questo genere partendo da zero, diventa un lavoro molto oneroso ma fortunatamente, come abbiamo potuto vedere nei capitolo precedenti, abbiamo a disposizione diversi strumenti che ci semplificano ampiamente il tutto. A questo proposito, per poter raggiungere l obiettivo prefissatoci, useremo il browser Layar, che ci da la possibilità di creare in maniera quasi totalmente immediata un applicativo di questo genere. Layar, infatti, ci permette di generare dei livelli (layer), che possiamo personalizzare su diversi piani. Una volta creato un livello, dovremo semplicemente specificare quali sono i nostri punti di interesse, chiamati POI (Points Of Interest), avvalendoci dell uso di un database, inserire le informazioni da visualizzare una volta che l utente si trova nei pressi di questi punti e personalizzare, infine, la parte grafica della nostra applicazione.

13 Requisiti Per cominciare a sviluppare un livello in Layar, innanzitutto abbiamo bisogno di un server che ospiti il database contenente le informazioni, i POI da visualizzare ed i file PHP per l interfacciamento tra il livello e il database; a questo proposito sfruttiamo il servizio di spazio web gratuito offerto da Altervista. Una volta effettuata la registrazione, Altervista ci offre spazio web gratuito, supporto al linguaggio PHP5 e un database MySQL5 interfacciato con PhpMyadmin. Raggiungiamo il sito di Altervista all indirizzo e inseriamo nell apposito box di testo il nome del sito che vorremmo pubblicare, nel nostro caso layarm.p.s. (Fig. 5). (Fig. 5) Una volta fatto ciò, clicchiamo sul tasto Prosegui.

14 Nella pagina successiva ci vengono richiesti alcuni dati anagrafici, compiliamo il modulo e clicchiamo sul tasto Prosegui in basso a destra (Fig. 6). (Fig. 6) A questo punto, lo staff di Altervista ci invierà una di conferma, contenente anche le credenziali di accesso, che ci permetteranno di attivare il nostro sito internet ed accedere al pannello di controllo (Fig.7).

15 (Fig. 7) Il sito che ospita i file per il corretto funzionamento del nostro livello è raggiungibile all indirizzo Il passo successivo, è quello di registrarsi come sviluppatori nel sito ufficiale di Layar all indirizzo in questo modo avremo accesso a tutte le risorse offerteci da Layar per la creazione di un nostro livello personalizzato. Andiamo dunque sul sito e clicchiamo sul link in alto a destra denominato Create account. Nella pagina successiva, inseriamo i nostri dati con i quali vorremo accedere a Layar (Fig. 8). (Fig. 8)

16 Una volta cliccato sul pulsante Create account, riceveremo una di conferma e potremo così accedere al nostro account Layar. Prima di procedere con la vera e propria creazione del livello, dobbiamo impostare il nostro account in modalità sviluppatore; per far ciò raggiungiamo la pagina e premiamo sul pulsante Become a developer now. A questo punto il nostro account è pronto e dovremmo avere una pagina simile a quella in figura 9. (Fig. 9) Creazione del livello Per iniziare la creazione del livello, clicchiamo sul pulsante in alto a destra denominato My layers, clicchiamo, quindi, su create new layer (Fig. 10). (Fig. 10)

17 In questo modo avremo accesso al form di creazione del nostro livello (Fig. 11) (Fig. 11) Questo form è usato per definire e creare uno strato sul server pubblico di Layar. Tutti i campi ad esso correlati sono obbligatori. Salvo il nome del livello che non può essere rinominato, gli altri campi possono essere modificati anche in seconda istanza. La tabella seguente fornisce spiegazioni dettagliate per ciascun campo:

18 Campi Richiesto/Default Definizione Tooltips Layer name Obbligatorio (non può essere rinominato) Il nome del layer. E la chiave che viene utilizzata per il recupero di informazioni all interno del livello Il nome deve esser scritto in caratteri alfanumerici minuscoli, iniziando con un carattere e deve essere unico; non può essere editato una volta che il livello è stato creato NOTA: Il layername apparirà nell URL del livello nella sezione Layers. Title Obbligatorio Il tasto che sarà mostrato nel banner sulla destra e il titolo del livello mostrato nella lista degli strati sul telefono. Massimo 18 caratteri. Publisher name Obbligatorio Il nome dell autore del livello, viene mostrato nelle liste della Layer Gallery. Di default lo sviluppatore del livello è anche colui che lo pubblica. A questo proposito questo campo sarà riempito con il nome dello sviluppatore. Layer type Obbligatorio Il tipo del livello determina come il client dovrà mostrare I POI. Generic 2D: Usa questo valore se vuoi usare le icone default o se hai caricato delle icone personalizzate per rappresentare I POI. 2D and 3D objects in 3D space: Se vuoi usare immagini 2D o modelli 3D nello spazio 3D. API endpoint URL Obbligatorio L URL del tuo servizio web dove Layar può recuperare le informazioni sui POI. NOTA sono supportate solo le porte 80 (http) e 443 (https). L url dovrebbe essere scritto nella forma Short descripti on Obbligatorio Una brave descrizione del livello, mostrata nelle lista dei livelli presente nel telefono. Un breve sommario del tuo livello e dei contenuti che esso propone con un massimo di 60 caratteri, inclusi gli spazi. Layar Vison Obbligatorio/Disabilitato Abilitare questa opzione permette di creare un livello con Layar Vision. Layar Vision è disponibile solo in Layar v6.0 (Android e ios platforms) Una volta compilato il campo con i relativi valori, clicchiamo su Create Layer; in particolare i valori che abbiamo inserito sono i seguenti:

19 Layer Name: filialim.p.s.; Title: Filiali M.P.S. Siena; Short description: Visualizza le filiali M.P.S. presenti a Siena e info varie; Publisher name: Davide Privitera; API endpoint URL: che è l indirizzo del sorgente PHP che gestisce l interfacciamento tra Layar e il database. Lo presenteremo in dettaglio nei prossimi paragrafi. a questo punto il livello comparirà nella nostra pagina personale (Fig. 12), nella sezione My Layers, raggiungibile dal pulsante blu presente in alto a destra. (Fig. 12) Cliccando sul pulsante Edit, potremo effettuare ulteriori personalizzazioni allo strato che abbiamo appena creato. La sezione che ci verrà mostrata sarà simile a quella in figura 13. (Fig.13)

20 In questa sezione, abbiamo vari tabs. Nella tabella sottostante sono mostrati i valori importanti che abbiamo modificato per il corretto funzionamento del livello. Il resto può essere lasciato ai valori di default già preimpostati. Tab Campi Personalizzazioni Listing & Indexing Icon Category Detail description Minimum API version Qui dobbiamo caricare un icona per il nostro livello. Selezioniamo Local information. Qui abbiamo inserito una breve descrizione del livello da noi creato e successivamente una descrizione più dettagliata. Selezioniamo la versione 4.0. Look & feel Banner Icon Carichiamo un banner da 120 x 52. Coverage Countries Bounding Boxes Scegliamo gli stati che il livello dovrà coprire, nel nostro caso scegliamo Italy. Poichè i nostri punti di interesse sono relative alla città di Siena, tramite questa opzione possiamo specificare a Layar la regione di funzionamento dello strato. Preparazione del Database Passiamo ora a creare il database che memorizzerà i POI e le informazioni da mostrare per ciascun punto di interesse. A questo proposito, usiamo il servizio offerto da Altervista, che ho precedentemente presentato. La struttura del database che andremo a creare è composta da quattro tabelle: POI: contiene le informazioni su ciascun punto di interesse (Fig.14a); POIAction: contiene le azioni che ciascun POI dovrà poter eseguire una volta che è stato selezionato (Fig.14b); LayerAction; Layer; (Fig. 14a) (Fig. 14b) Le tabelle sono costruite in modo da restituire in output dati formattati secondo lo standard definito da JSON di cui Layar ne fa largo uso.

21 JSON è l acronimo di JavaScript Object Notation ed è un formato adatto ad immagazzinare varie tipologie di informazioni, e quindi a scambiare queste informazioni tra applicazioni client/server. Uno dei suoi punti di forza è la facilità di scrittura e di analisi dei dati; questo agevola notevolmente gli sviluppatori che ne fanno uso [17]. Per prima cosa effettuiamo il login sul sito di Altervista, e dal menù AlterSito raggiungiamo la voce Database (Fig. 15). (Fig. 15) Per generare più velocemente le nostre tabelle, abbiamo fatto uso del codice SQL che si può direttamente inserire in PhpMyAdmin; accediamo dunque a PhpMyAdmin cliccando sul link in basso a sinistra visibile nella precedente immagine. A questo punto, una volta effettuato il login con le stesse credenziali di accesso dell account Altervista, ci ritroveremo nel menù principale di PhpMyAdmin (Fig.16). (Fig. 16)

22 Cliccando sul nome del database posto in alto a sinistra, che nel nostro caso è my_layarm.p.s., potremo accedere al menù per la creazione delle tabelle che andranno a popolare il nostro DB. Selezioniamo il tab SQL, otterremo un box di testo come quello in figura 17. (Fig. 17) Tramite questo strumento possiamo eseguire in maniera automatica qualsiasi azione, come ad esempio, generare nuove tabelle, popolarle con valori, selezionare determinati risultati etc, etc. Il codice per generare le nostre quattro tabelle è il seguente: SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; /*!40101 SET */; /*!40101 SET */; /*!40101 SET */; /*!40101 SET NAMES utf8 */; Struttura per la tabella Layer CREATE TABLE IF NOT EXISTS `Layer` ( `layer` varchar(255) NOT NULL, `refreshinterval` int(10) DEFAULT '300', `refreshdistance` int(10) DEFAULT '100', `fullrefresh` tinyint(1) DEFAULT '1',

23 `showmessage` varchar(255) DEFAULT NULL, `id` int(11) NOT NULL AUTO_INCREMENT, `biwstyle` enum('classic','collapsed') DEFAULT 'classic', PRIMARY KEY (`id`), UNIQUE KEY `layer` (`layer`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ; Struttura per la tabella POI CREATE TABLE IF NOT EXISTS `POI` ( `id` varchar(255) NOT NULL, `footnote` varchar(150) DEFAULT NULL, `title` varchar(150) NOT NULL, `lat` decimal(13,10) NOT NULL, `lon` decimal(13,10) NOT NULL, `imageurl` varchar(255) DEFAULT NULL, `description` varchar(150) DEFAULT NULL, `biwstyle` enum('classic','collapsed') DEFAULT 'classic', `alt` int(10) DEFAULT NULL, `donotindex` tinyint(1) DEFAULT '0', `showsmallbiw` tinyint(1) DEFAULT '1', `showbiwonclick` tinyint(1) DEFAULT '1', `poitype` enum('geo','vision') NOT NULL DEFAULT 'geo', `layerid` int(11) NOT NULL, PRIMARY KEY (`id`), KEY `layerid` (`layerid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

24 Struttura per la tabella LayerAction CREATE TABLE IF NOT EXISTS `LayerAction` ( `layerid` int(11) NOT NULL, `label` varchar(30) NOT NULL, `uri` varchar(255) NOT NULL, `id` int(10) NOT NULL AUTO_INCREMENT, `contenttype` varchar(255) DEFAULT 'application/vnd.layar.internal', `method` enum('get','post') DEFAULT 'GET', `activitytype` int(2) DEFAULT NULL, `params` varchar(255) DEFAULT NULL, `closebiw` tinyint(1) DEFAULT '0', `showactivity` tinyint(1) DEFAULT '1', `activitymessage` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`), KEY `layerid` (`layerid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; Struttura per la tabella `POIAction` CREATE TABLE IF NOT EXISTS `POIAction` ( `poiid` varchar(255) NOT NULL, `label` varchar(30) NOT NULL, `uri` varchar(255) NOT NULL, `autotriggerrange` int(10) DEFAULT NULL, `autotriggeronly` tinyint(1) DEFAULT '0',

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation

Dettagli

MySQL Database Management System

MySQL Database Management System MySQL Database Management System http://www.mysql.com/ DATABASE RELAZIONALI Un database è una collezione strutturata di informazioni. I database sono delle strutture nelle quali è possibile memorizzare

Dettagli

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

Data Base. Master Bio Info Reti e Basi di Dati Lezione 6 Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

qui possiamo scegliere se creare un nuovo Database oppure aprire un Database già esistente. Fatto ciò avremo questa seconda schermata:

qui possiamo scegliere se creare un nuovo Database oppure aprire un Database già esistente. Fatto ciò avremo questa seconda schermata: Creare un Database completo per la gestione del magazzino. Vedremo di seguito una guida pratica su come creare un Database per la gestione del magazzino e la rispettiva spiegazione analitica: Innanzitutto

Dettagli

BASI DI DATI http://www.diee.unica.it/~giacinto/bd. Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL

BASI DI DATI http://www.diee.unica.it/~giacinto/bd. Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL Università degli Studi di Cagliari Corso di Laurea in Ingegneria Elettronica Contatti BASI DI DATI http://www.diee.unica.it/~giacinto/bd Esercitazione su PHP & MySQL! Roberto Tronci! e-mail: roberto.tronci@diee.unica.it!

Dettagli

Tecnologie e Programmazione Web

Tecnologie e Programmazione Web Presentazione 1 Tecnologie e Programmazione Web Html, JavaScript e PHP RgLUG Ragusa Linux Users Group SOftware LIbero RAgusa http://www.solira.org - Nunzio Brugaletta (ennebi) - Reti 2 Scopi di una rete

Dettagli

Gestione Orario Lezioni: Schema del Database

Gestione Orario Lezioni: Schema del Database Gestione Orario Lezioni: Schema del Database corsi corso studenti studente anno anno docente orario id corso giorno ora1 docenti docente dipartimento email ora2 aula aule aula capienza 1 Gestione Orario

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012 Architettura di una applicazione Web Browser Web HTTP Server Web PHP Dati View Control

Dettagli

2. Costruire un database con Apache, PHP e MySql

2. Costruire un database con Apache, PHP e MySql 2. Costruire un database con Apache, PHP e MySql Lo scopo di questa esercitazione è realizzare un server web e costruire un database accessibile attraverso Internet utilizzando il server Apache, il linguaggio

Dettagli

Siti web e Dreamweaver. La schermata iniziale

Siti web e Dreamweaver. La schermata iniziale Siti web e Dreamweaver Dreamweaver è la soluzione ideale per progettare, sviluppare e gestire siti web professionali e applicazioni efficaci e conformi agli standard e offre tutti gli strumenti di progettazione

Dettagli

Esercitazioni di Basi di Dati

Esercitazioni di Basi di Dati Esercitazioni di Basi di Dati A.A. 2008-09 Dispense del corso Utilizzo base di pgadmin III Lorenzo Sarti sarti@dii.unisi.it PgAdmin III PgAdmin III è un sistema di progettazione e gestione grafica di database

Dettagli

Modulo 6 Proviamo Wordpress gratuitamente

Modulo 6 Proviamo Wordpress gratuitamente Copyright Andrea Giavara wppratico.com Modulo 6 Proviamo Wordpress gratuitamente 1. Wordpress.com una piattaforma gratuita per il blogging 2. Installare Wordpress in locale 3. Creare un sito gratis con

Dettagli

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Si consiglia di creare il data base, inserire i dati nelle tabelle, provare

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 2 Raffaella Gentilini 1 / 45 Sommario 1 Il DDL di SQL: Cancellazione ed Aggiornamento di una BD Cancellazione di Schemi, Tabelle, e Domini Aggiornamento di Tabelle

Dettagli

UNIVERSITÀ DEGLI STUDI DI FIRENZE. Relazione elaborato di progettazione e produzione multimediale

UNIVERSITÀ DEGLI STUDI DI FIRENZE. Relazione elaborato di progettazione e produzione multimediale UNIVERSITÀ DEGLI STUDI DI FIRENZE Relazione elaborato di progettazione e produzione multimediale AllPainters.Net SISTEMA PER LA GENERAZIONE DI SITI GRATUITI PER PITTORI Autori: - Bandini Roberto - Ercoli

Dettagli

Basi di dati Il linguaggio SQL

Basi di dati Il linguaggio SQL Basi di dati Il linguaggio SQL teoria e pratica con Microsoft Access Riepilogando Nelle basi di dati esiste 1. una parte invariante nel tempo, lo schema, costituita dalle caratteristiche dei dati (nomi

Dettagli

Basi di dati Il linguaggio SQL

Basi di dati Il linguaggio SQL Riepilogando Basi di dati Il linguaggio SQL Nelle basi di dati esiste 1. una parte invariante nel tempo, lo schema, costituita dalle caratteristiche dei dati (nomi degli attributi, domini, 2. una parte

Dettagli

L interfaccia a riga di comando di MySql

L interfaccia a riga di comando di MySql L interfaccia a riga di comando di MySql Una volta completata la procedura di installazione possiamo finalmente testare le funzionalità di MySQL. Sia che ci si trovi in ambiente Linux che Windows, l'interfaccia

Dettagli

Struttura logica di un programma

Struttura logica di un programma Struttura logica di un programma Tutti i programmi per computer prevedono tre operazioni principali: l input di dati (cioè l inserimento delle informazioni da elaborare) il calcolo dei risultati cercati

Dettagli

Manuale istruzioni sito internet

Manuale istruzioni sito internet Come modificare il vostro sito internet, creare news, inserire foto e allegati,. Manuale istruzioni sito internet manutenzione@nethics.it Pag. 1- Sommario Come inserire un contenuto... 3 Accedi al pannello

Dettagli

VIRTUAL MAIL. Guida rapida di utilizzo

VIRTUAL MAIL. Guida rapida di utilizzo VIRTUAL MAIL Guida rapida di utilizzo Sommario 1. INTRODUZIONE... 3 2. ACCESSO AL SERVIZIO... 4 Requisiti di sistema... 4 3. PROFILO... 5 Menu Principale... 5 Pagina Iniziale... 5 Dati Personali... 6 4.

Dettagli

Creazione ed uso di un data base in ACCESS Lezioni ed esercizi

Creazione ed uso di un data base in ACCESS Lezioni ed esercizi Creazione ed uso di un data base in ACCESS Lezioni ed esercizi 1 ACCESS Gli archivi Gli archivi sono un insieme organizzato di informazioni. Aziende Clienti e fornitori Personale Magazzino Enti pubblici

Dettagli

Creazione manuale delle tabelle (mediante scrittura del codice SQL corrispondente)

Creazione manuale delle tabelle (mediante scrittura del codice SQL corrispondente) Università degli Studi di Modena e Reggio Emilia Facoltà di Scienze della Comunicazione e dell Economia Corso di Laurea in Comunicazione e Marketing Anno Accademico 2005/06 Metodi per la Gestione dei Dati

Dettagli

Implementazione in Oracle di un semplice progetto

Implementazione in Oracle di un semplice progetto Oracle e SQL Implementazione in Oracle di un semplice progetto Operazioni preliminari La versione del DBMS Oracle a cui si farà riferimento di qui in seguito è la 10g Express Edition, liberamente scaricabile

Dettagli

Esercitazione: Il DBMS MySQL

Esercitazione: Il DBMS MySQL Laurea in Ingegneria Informatica SAPIENZA Università di Roma Insegnamento di Basi di Dati Esercitazione: Il DBMS MySQL Marco Console Aspetti Organizzativi Marco Console Sito: www.dis.uniroma1.it/~console

Dettagli

Applicazione client-server in PHP con database MySQL

Applicazione client-server in PHP con database MySQL Applicazione client-server in PHP con database MySQL Emanuele Scapin 1 1 Liceo Statale F.Corradini, via Milano 1, 36016 Thiene 30/05/2012 1 Premessa Dopo la trattazione di argomenti teorici di progettazione

Dettagli

Wordpress. Acquistare un sito web. Colleghiamoci con il sito www.aruba.it

Wordpress. Acquistare un sito web. Colleghiamoci con il sito www.aruba.it www.creativecommons.org/ Wordpress Wordpress è una piattaforma gratuita per creare siti web. In particolare è un software installato su un server web per gestire facilmente contenuti su un sito senza particolari

Dettagli

Corso di Web Programming

Corso di Web Programming Corso di Web Programming 11. PHP - Complementi Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea in Informatica Applicata

Dettagli

GERARCHIE RICORSIVE - SQL SERVER 2008

GERARCHIE RICORSIVE - SQL SERVER 2008 GERARCHIE RICORSIVE - SQL SERVER 2008 DISPENSE http://dbgroup.unimo.it/sia/gerarchiericorsive/ L obiettivo è quello di realizzare la tabella di navigazione tramite una query ricorsiva utilizzando SQL SERVER

Dettagli

La principale particolarità del web dinamico è la possibilità di variare i contenuti delle pagine in base alle richieste degli utenti.

La principale particolarità del web dinamico è la possibilità di variare i contenuti delle pagine in base alle richieste degli utenti. La principale particolarità del web dinamico è la possibilità di variare i contenuti delle pagine in base alle richieste degli utenti. Questa possibilità si materializza attraverso i meccanismi che permettono

Dettagli

Introduzione a MySQL

Introduzione a MySQL Introduzione a MySQL Cinzia Cappiello Alessandro Raffio Politecnico di Milano Prima di iniziare qualche dettaglio su MySQL MySQL è un sistema di gestione di basi di dati relazionali (RDBMS) composto da

Dettagli

LARGE. Manuale d'uso. www.largeproject.eu. Learning Augmented Reality Global Environment

LARGE. Manuale d'uso. www.largeproject.eu. Learning Augmented Reality Global Environment www.largeproject.eu LARGE Manuale d'uso Learning Augmented Reality Global Environment Il presente progetto è finanziato con il sostegno della Commissione europea. L autore è il solo responsabile di questa

Dettagli

Guida alla consultazione dei WMS

Guida alla consultazione dei WMS Provincia di Firenze SIT e reti informative Guida alla consultazione dei WMS con la collaborazione di Linea Comune S.p.a. INDICE 1. Che cosa è un WMS...2 2. Consultare i WMS con QuantumGIS...3 3. Consultare

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

Dettagli

Tool. Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013

Tool. Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013 Tool Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013 Basi di Dati e Sistemi Informativi () PostgreSQL A.A. 2012-2013 1 / 26 Gli strumenti che vedremo Basi

Dettagli

MYSQL. Avviare MySQL Per avviare il server MySQL basta lanciare il Servizio Mysql presente (aggiunto) tra i servizi di sistema.

MYSQL. Avviare MySQL Per avviare il server MySQL basta lanciare il Servizio Mysql presente (aggiunto) tra i servizi di sistema. Documento creato da Andrea www.ceccherini.net Per informazioni : andrea@ceccherini.net MYSQL MySQL è un database piuttosto popolare, reso ancor più interessante da almeno due fattori: primo, la sua gratuità;

Dettagli

CREARE UNA TAB DI FACEBOOK SULLA PAGINA AZIENDALE

CREARE UNA TAB DI FACEBOOK SULLA PAGINA AZIENDALE CREARE UNA TAB DI FACEBOOK SULLA PAGINA AZIENDALE Autore: KATIA D ORTA (@katiatrew) in collaborazione con MARISA FAUSONE (@Mfausone) 1 Questa guida è liberamente scaricabile sul sito cowinning.it 2 Questa

Dettagli

Corso breve su automazione d'ufficio

Corso breve su automazione d'ufficio OpenOffice.Org MySQL PHP Corso breve su automazione d'ufficio L'obiettivo di questa dimostrazione è la creazione di una connessione ad una sorgente dati e l'automazione della stessa con un foglio di calcolo

Dettagli

DUE GRUPPI DI COMANDI

DUE GRUPPI DI COMANDI LEZIONE16 SQL DDL PAG. 1 / 9 PROF. ANDREA ZOCCHEDDU LEZIONE16 SQL DDL LINGUAGGIO SQL DATA DESCRIPTION LANGUAGE DUE GRUPPI DI COMANDI I comandi del linguaggio SQL sono divisi in due grandi gruppi che formano

Dettagli

EPULIA - Enjoy Puglia using Ubiquitous technology in Landscape Interactive Adventures

EPULIA - Enjoy Puglia using Ubiquitous technology in Landscape Interactive Adventures UNIONE EUROPEA FONDO EUROPEO DI SVILUPPO REGIONALE. MINISTERO SVILUPPO ECONOMICO REGIONE PUGLIA AREA POLITICHE PER LO SVILUPPO IL LAVORO E L INNOVAZIONE PO FESR PUGLIA 2007-2013 Asse I Linea di Intervento

Dettagli

Access - Lezione 02. Basi di dati. Parte seconda. (Per andare direttamente su un argomento, fare clic con il mouse sul titolo nell indice sottostante)

Access - Lezione 02. Basi di dati. Parte seconda. (Per andare direttamente su un argomento, fare clic con il mouse sul titolo nell indice sottostante) Access - Lezione 02 Basi di dati Parte seconda (Per andare direttamente su un argomento, fare clic con il mouse sul titolo nell indice sottostante) 1.0 Operazioni di base 1.1 Impostare e pianificare un

Dettagli

COME CREARE IL DATABASE GESTIONE CLIENTI IN ACCESS 2010

COME CREARE IL DATABASE GESTIONE CLIENTI IN ACCESS 2010 ALBERTO FORTUNATO COME CREARE IL DATABASE GESTIONE CLIENTI IN ACCESS 2010 SPIEGAZIONE ED ILLUSTRAZIONE GUIDATA DI TUTTI I PASSAGGI PER LA CREAZIONE DELLE TABELLE, DELLE MASCHERE, DELLE QUERY, DEI REPORT

Dettagli

USER GUIDE. Manuale operativo per l utilizzo dell applicativo per il monitoraggio remoto Aditech Life REV 1

USER GUIDE. Manuale operativo per l utilizzo dell applicativo per il monitoraggio remoto Aditech Life REV 1 USER GUIDE Manuale operativo per l utilizzo dell applicativo per il monitoraggio remoto Aditech Life REV 1 SOMMARIO Introduzione... 3 Sensore BioHarness... 3 OVERVIEW BIOHARNESS 3.0 BT/ECHO... 4 OVERVIEW

Dettagli

Migrazione di HRD da un computer ad un altro

Migrazione di HRD da un computer ad un altro HRD : MIGRAZIONE DA UN VECCHIO PC A QUELLO NUOVO By Rick iw1awh Speso la situazione è la seguente : Ho passato diverso tempo a impostare HRD e a personalizzare i comandi verso la radio, le frequenze preferite,

Dettagli

Un Sistema Location-based per la mappatura degli Access Point

Un Sistema Location-based per la mappatura degli Access Point 1 Un Sistema Location-based per la mappatura degli Access Point Pasquale Cautela pasquale.cautela@studio.unibo.it Marco Peca marco.peca@studio.unibo.it Rosario Salpietro rosario.salpietro@studio.unibo.it

Dettagli

APPENDICE B Le Active Server Page

APPENDICE B Le Active Server Page APPENDICE B Le Active Server Page B.1 Introduzione ad ASP La programmazione web è nata con la Common Gateway Interface. L interfaccia CGI tuttavia presenta dei limiti: ad esempio anche per semplici elaborazioni

Dettagli

PHP 5. Accesso a database

PHP 5. Accesso a database PHP 5 Accesso a database PHP ed i database PHP funziona con molti database relazionali che includono: Oracle Access Postgres SQL Server MySQL Useremo MySQL poiché è semplice da usare, gratuito e molto

Dettagli

Utilizzare PHP 5. Le variabili GET e POST

Utilizzare PHP 5. Le variabili GET e POST Utilizzare PHP 5 Corso Interazione Uomo Macchina AA 2005/2006 Le variabili GET e POST La principale particolarità del web dinamico è la possibilità di variare i contenuti delle pagine in base alle richieste

Dettagli

COM_HELLOWORLD_PART4

COM_HELLOWORLD_PART4 COM_HELLOWORLD_PART1 Nel manifest la presenza del tag permette di gestire le versioni incrementali di aggiornamento anche grazie all uso del tag . Le installazioni successive del componente

Dettagli

ISTRUZIONI PASSO PASSO PER CREARE UN SITO CON JOOMLA SU ALTERVISTA

ISTRUZIONI PASSO PASSO PER CREARE UN SITO CON JOOMLA SU ALTERVISTA ISTRUZIONI PASSO PASSO PER CREARE UN SITO CON JOOMLA SU ALTERVISTA REGISTRARSI AL SITO ALTERVISTA, PER OTTENERE SPAZIO WEB GRATUITO o Andare sul sito it.altervista.org o Nel riquadro al centro, scrivere

Dettagli

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2010 Seconda prova scritta Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA

Dettagli

Progettare un Database Geografico con UML

Progettare un Database Geografico con UML Progettare un Database Geografico con UML Claudio Rocchini (rockini@tele2.it) Istituto Geografico Militare Introduzione In questa breve nota si vuole introdurre i principi di progettazione tramite il linguaggio

Dettagli

MICROSOFT ACCESS. Fabrizio Barani 1

MICROSOFT ACCESS. Fabrizio Barani 1 MICROSOFT ACCESS Premessa ACCESS è un programma di gestione di banche dati, consente la creazione e modifica dei contenitori di informazioni di un database (tabelle), l inserimento di dati anche mediante

Dettagli

Searching and Downloading OpenStreetMap Data

Searching and Downloading OpenStreetMap Data Searching and Downloading OpenStreetMap Data QGIS Tutorials and Tips Author Ujaval Gandhi http://google.com/+ujavalgandhi Translations by Pino Nicolosi a.k.a Rattus This work is licensed under a Creative

Dettagli

PHP 5. PHP ed i database. Database e tabelle. Struttura di un DB relazionale. Accesso a database

PHP 5. PHP ed i database. Database e tabelle. Struttura di un DB relazionale. Accesso a database PHP ed i database PHP 5 Accesso a database PHP funziona con molti database relazionale che includono: Oracle Access Postgres SQL Server MySQL Useremo MySQL poiché è semplice da usare, gratuito e molto

Dettagli

SISTEMI INFORMATIVI GEOGRAFICI IN GEO- LOGIA

SISTEMI INFORMATIVI GEOGRAFICI IN GEO- LOGIA MARIA TERESA MELIS SISTEMI INFORMATIVI GEOGRAFICI IN GEO- LOGIA titimelis@unica.it ANNO ACCADEMICO 2013/ 2014 LEZIONE 3 INTRODUZIONE AL SW ARCGIS Corso di Sistemi Informativi Geografici in Geologia a cura

Dettagli

Guida rapida alla creazione di cruciverba in stile italiano

Guida rapida alla creazione di cruciverba in stile italiano Introduzione a versione 8 Guida rapida alla creazione di cruciverba in stile italiano Crossword Compiler è un programma scritto da Antony Lewis Manuale scritto da Redi Vedovato 18 Ottobre 2007 SOMMARIO

Dettagli

AscoS3 Manuale Utente. Release 1.2

AscoS3 Manuale Utente. Release 1.2 AscoS3 Manuale Utente Release 1.2 mercoledì 16 luglio 2014 1 Sommario Presentazione... 3 Interfaccia Web Primo accesso... 4 Gestione Account... 5 Cambio password... 5 Recupero Access Key e Secret Key...

Dettagli

DB2 Universal Database (UDB) DB2 Universal Database (UDB)

DB2 Universal Database (UDB) DB2 Universal Database (UDB) DB2 Universal Database (UDB) Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DB2Presentazione2009.pdf Sistemi Informativi L-A DB2 Universal

Dettagli

User Tools: DataBase Manager

User Tools: DataBase Manager Spazio di lavoro Per usare T-SQL Assistant selezionare il link Simple Query e spostare a piacere la piccola finestra dove un menu a tendina mostra i diversi comandi SQL selezionabili, il pulsante Preview

Dettagli

AJAX. Goy - a.a. 2006/2007 Servizi Web 1. Cos'è il Web 2.0

AJAX. Goy - a.a. 2006/2007 Servizi Web 1. Cos'è il Web 2.0 AJAX Goy - a.a. 2006/2007 Servizi Web 1 Cos'è il Web 2.0 Web 2.0 = termine introdotto per la prima volta nel 2004 come titolo di una conferenza promossa dalla casa editrice O Reilly L'idea è che ci si

Dettagli

Lezione 6: Form 27/04/2012

Lezione 6: Form 27/04/2012 Lezione 6: Form In alcuni documenti HTML può essere utile creare dei moduli (form) che possono essere riempiti da chi consulta le pagine stesse (es. per registrarsi ad un sito). Le informazioni sono poi

Dettagli

Primi passi - Quick Start Guide

Primi passi - Quick Start Guide Archive Server for MDaemon Primi passi - Quick Start Guide Introduzione... 2 Prima di installare... 3 Primi passi... 5 Primissimi passi... 5 Accesso all applicazione... 5 Abilitazione dell archiviazione

Dettagli

L interfaccia. La barra delle applicazioni. MS Windows Barra delle Applicazioni

L interfaccia. La barra delle applicazioni. MS Windows Barra delle Applicazioni Windows XP In questa sezione, si desidero evidenziare le caratteristiche principali di Windows cercando possibilmente di suggerire, per quanto possibile, le strategie migliori per lavorare velocemente

Dettagli

SQL (STRUCTURED QUERY LANGUAGE)

SQL (STRUCTURED QUERY LANGUAGE) SQL (STRUCTURED QUERY LANGUAGE) Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan SQL DDL Data Definition Language DML Data Manipulation Language DCL Data Control Language DDL Obiettivo: Definire la struttura

Dettagli

CLAROLINE DIDATTICA ONLINE MANUALE DEL DOCENTE

CLAROLINE DIDATTICA ONLINE MANUALE DEL DOCENTE CLAROLINE DIDATTICA ONLINE MANUALE DEL DOCENTE Sommario 1. Introduzione... 3 2. Registrazione... 3 3. Accesso alla piattaforma (login)... 4 4. Uscita dalla piattaforma (logout)... 5 5. Creazione di un

Dettagli

Introduzione a PHP. Simone Baldassin Webdesign

Introduzione a PHP. Simone Baldassin Webdesign Introduzione a PHP Phpè un linguaggio di programmazione nato nel 1995 per mano di RasmusLerdof utilizzando un set di caratteri binari scritto in C (altro linguaggio di programmazione) e gran parte della

Dettagli

WEB TECHNOLOGY. Il web connette. LE persone. E-book n 2 - Copyright Reserved

WEB TECHNOLOGY. Il web connette. LE persone. E-book n 2 - Copyright Reserved WEB TECHNOLOGY Il web connette LE persone Indice «Il Web non si limita a collegare macchine, ma connette delle persone» Il Www, Client e Web Server pagina 3-4 - 5 CMS e template pagina 6-7-8 Tim Berners-Lee

Dettagli

Ambiente Virtuale Inclusivo per la Persona Autistica MANUALE OPERATORE. Release 1.0-13/10/09. Copyright Lynx 2009 http://www.lynxlab.

Ambiente Virtuale Inclusivo per la Persona Autistica MANUALE OPERATORE. Release 1.0-13/10/09. Copyright Lynx 2009 http://www.lynxlab. MANUALE OPERATORE Release 1.0-13/10/09 Copyright Lynx 2009 http://www.lynxlab.com Indice generale MANUALE OPERATORE...1 1.1 Definizioni...3 1.2 Ambienti...3 1.3 Release e copyright...3 2. Utenti...4 2.1

Dettagli

ios QuickStart 2014 Release 3 Xojo, Inc.

ios QuickStart 2014 Release 3 Xojo, Inc. ios QuickStart 2014 Release 3 Xojo, Inc. Capitolo 1 Introduzione Benvenuto in Xojo, lo strumento più semplice per creare applicazioni multipiattaforma per il desktop, il web e per ios. Sezione 1 QuickStart

Dettagli

Evoluzione dell applicazione mobile Travel Intoscana e realizzazione del sistema delle applicazioni territoriali

Evoluzione dell applicazione mobile Travel Intoscana e realizzazione del sistema delle applicazioni territoriali Evoluzione dell applicazione mobile Travel Intoscana e realizzazione del sistema delle applicazioni territoriali CIG: 6261506635 Specifiche tecniche Pagina 1 Sommario 1. Oggetto del servizio... 3 1.1 Contesto

Dettagli

Lyra CRM WebAccess. Pag. 1 di 16

Lyra CRM WebAccess. Pag. 1 di 16 Lyra CRM WebAccess L applicativo Lyra CRM, Offer & Service Management opera normalmente in architettura client/server: il database di Lyra risiede su un Server aziendale a cui il PC client si connette

Dettagli

ESPLORARE IL MONTE CUCCO CON SMARTPHONE E TABLET: QRPLACES E LA REALTÀ AUMENTATA

ESPLORARE IL MONTE CUCCO CON SMARTPHONE E TABLET: QRPLACES E LA REALTÀ AUMENTATA ESPLORARE IL MONTE CUCCO CON SMARTPHONE E TABLET: QRPLACES E LA REALTÀ AUMENTATA WIKITUDE E L ESPLORAZIONE DEL MONTE CUCCO La Realtà Aumentata e l esplorazione turistica Per realtà aumentata (in inglese

Dettagli

Realtà aumentata su piattaforma mobile al servizio della Meccatronica. Emanuele Borasio G- maps

Realtà aumentata su piattaforma mobile al servizio della Meccatronica. Emanuele Borasio G- maps Realtà aumentata su piattaforma mobile al servizio della Meccatronica Emanuele Borasio G- maps Nel mondo sono sta, vendu, oltre un miliardo e 700 milioni di disposi,vi mobili (smartphone e tablet). La

Dettagli

Attacchi alle applicazioni web: SQL injection e Cross-site scripting (XSS)

Attacchi alle applicazioni web: SQL injection e Cross-site scripting (XSS) UNIVERSITÀ DEGLI STUDI DI CATANIA Facoltà di Ingegneria Corso di laurea Specialistica in Ingegneria Informatica Tesina di Sicurezza nei Sistemi informativi Simona Ullo Attacchi alle applicazioni web: SQL

Dettagli

Pannello controllo Web www.smsdaweb.com. Il Manuale

Pannello controllo Web www.smsdaweb.com. Il Manuale Pannello controllo Web www.smsdaweb.com Il Manuale Accesso alla piattaforma Accesso all area di spedizione del programma smsdaweb.com avviene tramite ingresso nel sistema via web come se una qualsiasi

Dettagli

Infine abbiamo anche effettuato un operazione di traduzione in italiano delle due aree principali di Joomla.

Infine abbiamo anche effettuato un operazione di traduzione in italiano delle due aree principali di Joomla. Joomla dopo l installazione Lezione 2 Joomla dopo l installazione Premessa Abbiamo nella lezione precedente installato offline la piattaforma di Joomla. Ricapitolando abbiamo prima configurato EasyPhp

Dettagli

Guida al sito - Leader

Guida al sito - Leader Guida al sito - Leader 1 1) ACCEDERE AL BACKEND... 3 2) VISUALIZZARE E MODIFICARE I CONTENUTI DELLA PAGINA PRINCIPALE... 4 a) Inserire testi... 6 b) Inserire un immagine all interno della pagina... 6 c)

Dettagli

Configurazione Stampe

Configurazione Stampe Configurazione Stampe Validità: Febbraio 2013 Questa pubblicazione è puramente informativa. SISECO non offre alcuna garanzia, esplicita od implicita, sul contenuto. I marchi e le denominazioni sono di

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

Dettagli

GUIDA DYLOG E-COMMERCE powered by MAGENTO

GUIDA DYLOG E-COMMERCE powered by MAGENTO GUIDA DYLOG E-COMMERCE powered by MAGENTO 1. Intestare il sito La prima operazione da compiere sul nostro sito E-Commerce consiste nell intestazione. Il sito viene infatti rilasciato comprensivo di una

Dettagli

Guida all uso del sistema

Guida all uso del sistema www.unicas.it Versione 3.0 del 9/12/2009 Pagina 1 Sommario Premessa... 3 Accesso in modalità di redattore... 4 CREAZIONE DI ELEMENTI... 5 MODIFICA DI ELEMENTI... 12 ELIMINAZIONE DI ELEMENTI... 12 ORDINAMENTO

Dettagli

Sommario Indietro >> Aggiungi Rimuovi Lingua? Informazioni su questa Guida... Navigazione nella Guida

Sommario Indietro >> Aggiungi Rimuovi Lingua? Informazioni su questa Guida... Navigazione nella Guida Sommario Indietro >> Informazioni su questa Guida... Navigazione nella Guida Personalizzazione Apertura del pannello di controllo Funzioni del pannello di controllo Schede Elenchi del pannello di controllo

Dettagli

VoiceManager. Guida all uso

VoiceManager. Guida all uso VoiceManager Guida all uso Terza edizione ottobre 2014 Voice Manager Sommario Sommario... 3 Voice Manager... 4 1 Introduzione... 4 2 Uso del sistema di riconoscimento vocale... 5 3 Funzionamento del riconoscitore

Dettagli

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari Gubiani & Montanari Il DBMS Oracle 1 Il DBMS Oracle Express Edition Donatella Gubiani e Angelo Montanari Il DBMS Oracle Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle (nelle sue versioni più

Dettagli

Costruzione di Sit Web con PHP e MySQL. Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query

Costruzione di Sit Web con PHP e MySQL. Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query Costruzione di Sit Web con PHP e MySQL Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query Esercitazione In questa lezione si farà insieme una seconda esercitazione che

Dettagli

Remote SQL Command Execution

Remote SQL Command Execution Remote SQL Command Execution Spesso si ha a che fare con SQL Injection se ci si trova nel campo della sicurezza informatica, ma non sempre si è a conoscenza di quanto una vulnerabilità del genere può essere

Dettagli

MyPostman. Progetto di messaggistica istantanea Invio messaggi ai tuoi contatti attraverso Google Cloud Messaging

MyPostman. Progetto di messaggistica istantanea Invio messaggi ai tuoi contatti attraverso Google Cloud Messaging MyPostman Progetto di messaggistica istantanea Invio messaggi ai tuoi contatti attraverso Google Cloud Messaging MyPostman ti permette di scambiare messaggi ed informazioni con i tuoi contatti ed i tuoi

Dettagli

Dispensa per corsi FSE For.em. Lezioni pratiche per il software in corso di apprendimento. prof.apollonio

Dispensa per corsi FSE For.em. Lezioni pratiche per il software in corso di apprendimento. prof.apollonio Dispensa per corsi FSE For.em Lezioni pratiche per il software in corso di apprendimento. prof.apollonio Introduzione I due programmi proposti sono scelti al fine di fornire la capacità di lavorare con

Dettagli

Installazione di Apache 2.2 Installazione di PHP 5.4 Installazione di MySQL 5.5 Configurazione e test di PHP-MySQL con l'estensione mysqli e mysql

Installazione di Apache 2.2 Installazione di PHP 5.4 Installazione di MySQL 5.5 Configurazione e test di PHP-MySQL con l'estensione mysqli e mysql Installare Apache 2.2, PHP 5.4, MySQL 5.5 su Windows In questo tutorial mostreremo in dettaglio le procedure di installazione e configurazione di Apache 2.2, PHP 5.4 e MySQL 5.5 su Windows XP/7. Il nostro

Dettagli

Università degli studi di Urbino C.d.L : Informatica Applicata Anno Accademico : 2007/2008. .: FastResearch :. Gestionale per Negozio Informatico

Università degli studi di Urbino C.d.L : Informatica Applicata Anno Accademico : 2007/2008. .: FastResearch :. Gestionale per Negozio Informatico Università degli studi di Urbino C.d.L : Informatica Applicata Anno Accademico : 2007/2008.: FastResearch :. Gestionale per Negozio Informatico..: Realizzato da Giorgio Rosolia Mat. 205993 :.. Corso: Basi

Dettagli

Università di Firenze Gestione Presenze Interfaccia grafica

Università di Firenze Gestione Presenze Interfaccia grafica Università di Firenze Gestione Presenze Interfaccia grafica Pagina 1 di 29 Versione Emissione Approvazione Modifiche Apportate Autore Data Autore Data 1 Maggini 01/03/06 - - Prima emissione. Pagina 2 di

Dettagli

POTENZIALITÀ E APPLICAZIONI DI UNA NUOVA STRATEGIA DI MARKETING

POTENZIALITÀ E APPLICAZIONI DI UNA NUOVA STRATEGIA DI MARKETING POTENZIALITÀ E APPLICAZIONI DI UNA NUOVA STRATEGIA DI MARKETING ACCEDI CONNETTI ESPLORA WWW.SSGWEB.IT/AR introduzione COS È LA REALTÀ AUMENTATA La Realtà Aumentata (in inglese augmented reality, abbreviato

Dettagli

Procedura per la raccolta dati sul campo mediante dispositivi mobili

Procedura per la raccolta dati sul campo mediante dispositivi mobili Laboratorio di Geomatica Procedura per la raccolta dati sul campo mediante dispositivi mobili - RAPPORTO TECNICO - A cura del gruppo di lavoro: Stefano Roverato Fabio Olivotti Alice Mayer LUGLIO 2014 Indice

Dettagli

RELAZIONE E-COMMERCE

RELAZIONE E-COMMERCE RELAZIONE E-COMMERCE di Jessica Gregoire Istituto Tecnico Economico Agostino Bassi Anno scolastico 2012/2013 1 INDICE Traccia del problema : pagina 2 Analisi di massima: pagina 2 Analisi al dettaglio:

Dettagli

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,

Dettagli

ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO SPERIMENTALE Progetto ABACUS SIMULAZIONE PROVA SCRITTA DI INFORMATICA

ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO SPERIMENTALE Progetto ABACUS SIMULAZIONE PROVA SCRITTA DI INFORMATICA Istituto di Istruzione Superiore Alessandrini - Marino ESAME DI STATO DI ISTITUTO TECICO IDUSTRIALE CORSO SPERIMETALE Progetto ABACUS SIMULAZIOE PROVA SCRITTA DI IFORMATICA La società PcTeramo srl è una

Dettagli

2. Creazione di moduli per Drupal: un tutorial.

2. Creazione di moduli per Drupal: un tutorial. Pubblicato da Drupal Italia (www.drupalitalia.org) per gentile concessione di Antonio Santomarco Capitolo 2. 2. Creazione di moduli per Drupal: un tutorial. 2.1. Introduzione. Come detto in precedenza,

Dettagli