Database in rete & Pagine dimamiche

Slides:



Advertisements
Presentazioni simili
DBMS (DataBase Management System)
Advertisements

Database MySql.
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
Utilizzare PHP 5 Corso Interazione Uomo – Macchina AA 2005/2006.
Mantenimento dello stato Laboratorio Progettazione Web AA 2009/2010 Chiara Renso ISTI- CNR -
Connessione con MySQL.
Un DataBase Management System (DBMS) relazionale client/server.
Basi di Dati e Sistemi Informativi
Sistemi Informativi sul Web
Installazione di Drupal: requisiti. (sistemista) Installazione, struttura dei file, nodi speciali.
Basi di Dati e Sistemi Informativi
Corso di WebMaster Mercoledì 14 Novembre. Parte I – Introduzione al Corso Lezione 1: Presentazione Descrizione Breve del Corso Semplice Valutazione.
Fabrizio Felici LAMP workshop GROsseto Linux Users Group.
Interazione col DB Per interagire con una base dati da una pagina PHP occorre procedere come segue: Eseguire la connessione al DBMS MySQL in ascolto;
MySQL Database Management System
PHP MySQL Accesso a database via web. Connessione Script PHP per la connessione a un server MySQL mysql_connect(nomeServer,nomeUtente,password);
Protocolli e architetture per WIS. Cronologia di Internet ricerche sulla commutazione di pacchetto (Leonard Kleinrock) 1967 Nasce il progetto.
Database Elaborato da: Claudio Ciavarella & Marco Salvati.
Joomlahost.it1 Presentato da Fustini Alessandro Myslq DBA e Developer certified Joomlahost.it.
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 UdA 1A Database Progettazione Fisica G IORGIO P ORCU
Tecnologie lato Server: i Server Web © 2005 Stefano Clemente I lucidi sono in parte realizzati con materiale tratto dal libro di testo adottato tradotto.
PHP.  HTML (Hyper Text Markup Language)  CSS (Cascading Style Sheets)  Javascript (linguaggio di programmazione client)  PHP ( Hypertext Preprocessor.
Giuditta Cantoni, 4 E S.I.A I DATABASE. Definizione databese In informatica, il termine database, banca dati o base di dati (a volte abbreviato con il.
POLITECNICO DI MILANO FACOLTA’ DI INGEGNERIA SEDE DI CREMONA TESI DI DIPLOMA IN INGEGNERIA INFORMATICA RELATOREAUTORI Prof. Vittorio TrecordiDemicheli.
1 Università della Tuscia - Facoltà di Scienze Politiche. Informatica 2 - a.a Prof. Francesco Donini Active Server Pages.
H T M L Hyper Text Markup Language L' HTML è un linguaggio di markup usato per la creazione di documenti ipertestuali sotto forma di pagine web.
La sicurezza dei sistemi informatici Sistemi di Autenticazione e Directory Giuseppe Guerrasio “Sapere dove.
PGDay 2009 FSGateway Ing. Torello Querci Resp. Architetture SW - Negens S.r.l. 4 Dicembre 2009, Pisa.
Dati in rete Appunti.
Corso per Webmaster base
Vulnerability Assessment
Università degli Studi di Modena e Reggio Emilia
Sistemi e Applicazioni per l’Amministrazione Digitale
Microsoft Access E’ un programma utile per lo sviluppo di applicazioni gestionali che si appoggiano a una base dati.
Microsoft Access E’ un programma utile per lo sviluppo di applicazioni gestionali che si appoggiano a una base dati.
Applicazione web basata su web service e web socket
Dati in rete Appunti.
ORACLE Corso Base Copyright © Maggio 2008 Assi Loris Versione : 1
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
PHP Argomenti avanzati Alberto Ferrari.
APACHE2-PHP su Raspberry
Corso di Ingegneria del Web e Applicazioni A A
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Asynchronous JavaScript and XML
MODELLAZIONE DEI DATI.
Sviluppo di un'applicazione web per l'utilizzo del framework SparkER
Studente : Andrea Cassarà Classe: 5AII A.S. 2014/2015 Link Sito
Le QUERY in ACCESS Con QBE
Database
Introduzione alle basi di dati
Progetto di Tecnologie Web 2014/2015 THERMOWEB
Predisposizione e presentazione della domanda di nullaosta
Access.
Programmare.
Introduzione alla materia sistemi
Programma DB-A Franco Turini.
SQL per la modifica di basi di dati
Marco Panella Pubblicare in rete Marco Panella
ADO Per gestire i database con tecnologia ASP si utilizzano strumenti ADO (ActiveX Data Objects): un'architettura che fornisce oggetti.
Marco Panella Internet e WWW Marco Panella
Classe V A A.s – 2012 Programma di Informatica
2. JavaScript nelle pagine web
Free .NET Hosting - somee.com
OpenLayers Client di mappe “non solo” WMS
Predisposizione e presentazione della domanda di nullaosta
Gli archivi e le basi di dati
UNIVERSITÀ DI MODENA E REGGIO EMILIA
Introduzione ai DBMS I Sistemi di Gestione di Basi di Dati sono strumenti software evoluti per la gestione di grandi masse di dati residenti su memoria.
Eprogram informatica V anno
Docente: Sabato Bufano
Transcript della presentazione:

Database in rete & Pagine dimamiche Creazione di un sito web con e di Jacopo Sirianni anno scolastico 2007/2008

Introduzione Data la sempre crescente quantità di informazioni presenti in un sito internet, sempre più spesso si realizzano soluzioni web che fanno uso di un database. Per creare il mio sito web ho utilizzato il linguaggio PHP e MySQL come DBMS separando la creazione dei contenuti da quella delle pagine per aumetare l'efficienza. Si è preferito inoltre l'uso di un database al posto del filesystem in quanto più efficiente e più adatto alla realizzazione di un sito internazionalizzabile.

Programmazione lato server: PHP PHP (acronimo di PHP: Hypertext Preprocessor) è un linguaggio di programmazione lato server che consente di creare pagine web dinamiche, ossia che sono frutto di un'elaborazione. PHP per funzionare ha bisogno di un apposito interprete che comunica con il web server. Server web Client richiesta pagina (X)HTML invio pagina Client richiesta pagina (X)HTML invio pagina Server web Interprete PHP richiesta esecuzione codice PHP invio risultato esecuzione <html> <head> ... </head> <body> ... <?php echo “questo è PHP!!!!”; ?> ... </body> </html> T e m p o

Programmazione lato client: JavaScript Il client riceve il codice JavaScript dal server web assieme al codice (X)HTML e viene eseguito da un interprete contenuto nel browser. Browser Server web La programmazione lato client è complementare a quella lato server. interprete JavaScript interprete PHP <html> <head> ... </head> <body> ... <script language=”javascript” type="text/javascript"> /* codice */ </script> ... </body> </html>

Database: cenni teorici Un database relazionale è strutturato in tabelle composte da righe e colonne. Ogni riga è resa univoca dalla chiave primaria. id date title_en title_it content_en content_it reads_en reads_it news desc_en desc_it category_en category_it path container name downloads files avere riferirsi Nei database relazionali è possibile stabilire delle relazioni tra le tabelle attraverso le chiavi esterne. Per progettare un database solitamente si realizza lo schema E/R (Entity / Relationship).

Database: SQL Le interrogazioni (query) al database vengono eseguite utilizzando il linguaggio SQL (Structured Query Language). SQL è: Semplice Potente Case-insensitive L'istruzione più utilizzata è la SELECT che permette di estrarre i dati dal database. La sua sintassi può essere estesa grazie ad elementi facoltativi come GROUP BY, ORDER BY e altri. SELECT nome_campi FROM tabella WHERE condizione; mysql_query("SELECT id, date, title_en, title_it, content_en, content_it, views_en, views_it, container_id FROM news ORDER BY date DESC LIMIT " . $start . ", 10" . ";");

Applicazioni e librerie sono ”limitanti” Database in rete Un DataBase Management System (DBMS) è un software che permette la gestione di una base di dati e può essere realizzato in vari modi: Applicazione (es: Microsoft Access) Libreria (es: SQLite) Server (es: MySQL) L'implementazione basata su file permette ad un solo utente per volta di scrivere nel database. L'accesso ai dati è getistito dal filesystem perchè non c'è un sistema di autenticazione. Non è possibile stabilire dei permessi all'interno del database. Applicazioni e librerie sono ”limitanti” Server

Database in rete: MySQL MySQL è un Relational DBMS (RDBMS) open source sviluppato da MySQL AB acquistata quest'anno da Sun Microsystems. MySQL è un server che gestisce la race condition ovvero l'accesso in contemporanea degli utenti al database. PHP per interrogare il database, deve prima connettersi e successivamente disconnettersi. $db_host = "localhost"; $db_user = "utente"; $db_password = "password"; $db_name = "database"; $db = mysql_connect($db_host, $db_user, $db_password); mysql_select_db($db_name) or die ("Errore nella selezione del database."); // interrogazioni mysql_close($db);

Interrogazioni in MySQL Le interrogazioni in MySQL vengono fatte con la funzione mysql_query() che restituisce una tabella con i risultati. Alcune delle altre funzioni che ho utilizzato sono: mysql_fetch_array($result, MYSQL_ASSOC) Preleva un record dall'interrogazione. mysql_num_rows($result) Conta il numero di righe (cardinalità) della tabella $result. Le pagine dinamiche agiscono da interfaccia tra l'utente e il database. $result = mysql_query(“SELECT * FROM tabella”); Pagina web DBMS DB

Passaggio delle variabili: GET e POST Le pagine web dinamiche possono generare il contenuto utilizzando dei parametri che possono essere passati dall'utente. I metodi per passare i parametri sono due: GET (usato con i link) visibile all'utente POST (usato con i form) invisibile all'utente I dati saranno accessibili nella pagina PHP grazie a degli array associativi, $_GET e $_POST. Ho utilizzato GET per identificare le diverse pagine del sito; questo permette all'utente di salvare le pagine nei segnalibri. <a href=”./index.php?section=projects”>Progetti</a> <form action=”pagina.php” method=”post”> <input type=”text” name=”name” /> <input type=”submit” name=”submit” value=”invia” /> </form> echo $_POST['name'];

Mantenimento dello stato: cookie e sessioni Una volta passati i parametri il problema è come renderli accessibili in tutte le pagine (HTTP è stateless). cookie sessioni I cookie sono piccoli file memorizzati nel client anche dopo la chiusura del browser o il riavvio del computer; vengono cancellati alla loro scadenza. I dati vengono letti dall'array $_COOKIE. I cookie possono essere un rischio per la sicurezza, richiedono il supporto dell'utente e non permettono di memorizzare array. Le sessioni superano queste limitazioni associando ad ogni utente un array identificato da un id. L'id viene memorizzato in un cookie o passato tramite GET. I valori della sessione sono accessibili tramite l'array $_SESSION. setcookie(“nomecookie”, “valore”, time() + 3600); session_start();

Note bibliografiche & riferimenti Informatica: le basi di dati e il linguaggio SQL, A. Lorenzi ed E. Cavalli, 2007, Atlas www.php.net www.mysql.com www.html.it it.wikipedia.org it.wikibooks.org Questo documento è scaricabile gratuitamente dal sito http://jacop0.altervista.org. Copyright © Jacopo Sirianni 2008 Alcuni diritti riservati. Questo documento è rilasciato sotto i termini della licenza Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported.