4 Pubblicare i dati MySQL

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "4 Pubblicare i dati MySQL"

Transcript

1 4 Pubblicare i dati MySQL sul Web Eccoci: questo è ciò che probabilmente vi interessava di più! In questo capitolo imparerete le procedure per prendere delle informazioni contenute in un database per poi mostrarle su una pagina Web in modo che tutti possano vederle. Fino a qui avete installato e imparato i principi di base di MySQL, un database relazionale e PHP, un linguaggio di scripting lato-server. Ora vedrete come utilizzare questi due strumenti insieme per creare un sito Web! Una ripassata ai principi di base Prima di andare avanti vale la pena dare una breve occhiata indietro per ricordarci il nostro scopo ultimo. Abbiamo due strumenti molto potenti a nostra disposizione: il linguaggio di scripting e un database MySQL. È importante capire come questi possano operare insieme. L idea è quella di un sito Web il cui contenuto risiede in un database che viene richiamato dinamicamente per creare delle pagine Web visibili con un normale browser. In questo modo da una parte avrete un visitatore del vostro sito che usa un browser Web per richiedere una pagina e che si aspetta di ricevere un documento HTML standard. Dall altro lato avrete il contenuto del vostro sito che sta in più tabelle di in un database MySQL che, a sua volta, sa solo rispondere a delle query (comandi) SQL. Come è mostrato nella figura 4.1, il linguaggio di scripting PHP è il tramite che unisce i due linguaggi. Processa la pagina richiesta, va a cercare i dati dal database MySQL e li consegna come una pagina HTML ben formattata. Con PHP potete scrivere gli aspetti di presentazione del vostro sito (tutte le grafiche e i layout di pagina) come i template del normale HTML. Dove ci dovrebbe essere il contenuto, in questi template, utilizzerete del codice PHP per connettervi al database MySQL in modo che, utilizzando le query SQL già usate per creare una tabella di barzellette nel Capitolo 2, Primi passi con MySQL, il contenuto venga recuperato e visualizzato. Solo perché sia chiaro nella vostra testa, questo è quello che succederà quando qualcuno visiterà una pagina sul vostro sito Web costruito su un database:

2 Creare siti Web con PHP e MySQL Figura 4.1. PHP recupera i dati da MySQL per produrre pagine Web. 1. Il browser del visitatore richiede la pagina con un URL normale. 2. Il software del server Web (Apache, IIS, o qualsiasi altro) riconosce che il file richiesto è uno script PHP e allora, sul server, interpreta il file usando il suo plug-in PHP, prima di rispondere alla richiesta della pagina. 3. Alcuni comandi PHP (che dovete ancora imparare) si connetteranno al database MySQL e richiederanno il contenuto della pagina Web. 4. Il database MySQL risponderà mandando il contenuto richiesto allo script PHP. 5. Lo script PHP immagazzinerà il contenuto in una o più variabili PHP e quindi utilizzerà una dichiarazione echo per proporlo come output e parte della pagina Web. 6. Il plug-in PHP termina, con una copia dell HTML per il server Web. 7. Il server Web manda l HTML al browser come se fosse un file HTML normale, con la sola eccezione che, anziché venire direttamente da un file HTML, la pagina è un output fornito dal plug in PHP. Connettersi a MySQL con PHP Prima che possiate ricavare dei contenuti dal vostro database MySQL, da includere poi in una pagina Web, dovete sapere come stabilire una connessione a MySQL con uno script PHP. In precedenza, nel Capitolo 2, Primi passi con MySQL, avete usato un programma chiamato mysql che vi ha permesso di creare tale connessione dal prompt dei comandi. PHP non ha bisogno di nessun programma speciale, comunque; la possibilità di connettersi a MySQL è insita nello stesso linguaggio. La funzione integrata mysql_connect stabilisce la connessione: mysql_connect(address, username, password) In questo caso address è l indirizzo IP o il nome host del computer sul quale il server MySQL è in esecuzione ( localhost se è in esecuzione nello stesso computer del software del Web Server) e username e password sono gli stessi nome utente e password di MySQL che avete usato per connettervi al server MySQL, nel Capitolo 2, Primi passi con MySQL. 60

3 Capitolo 4: Pubblicare i dati MySQL sul Web Dovreste ricordarvi che le funzioni in PHP fanno risultare un valore (output) solo quando vengono richiamate. Non preoccupatevi se questo non vi fa risuonare alcun campanello è un dettaglio su cui abbiamo glissato quando abbiamo parlato inizialmente delle funzioni, nel Capitolo 3, Primi passi con PHP. Oltre a fare qualcosa di utile quando sono richiamate, la maggior parte delle funzioni ha come output un valore; questo valore potrebbe essere immagazzinato in una variabile per un uso successivo. La funzione mysql_connect mostrata in precedenza, per esempio, ha come risultato un numero che identifica la connessione che è stata stabilita. Poiché abbiamo intenzione di usare questa connessione dovremo tener presente questo valore. Ecco un esempio di come potremmo connetterci al nostro server MySQL. $dbcnx = mysql_connect( localhost, root, mypasswd ); Come descritto prima, i valori dei tre parametri di funzione potrebbero variare in base al vostro server MySQL. Quello che è importante da vedere è che il valore risultato di mysql_connect (che è chiamato identificatore di connessione) è salvato un una variabile chiamata $dbcnx. Poiché il server MySQL è un software completamente a sé stante, dobbiamo considerare la possibilità che il server possa essere indisponibile o inaccessibile, a causa di un blackout del network o perché la combinazione nome utente/password che avete fornito non viene accettata. In questi casi, la funzione mysql_connect non ha come risultato un identificatore di connessione, non essendo stabilita alcuna connessione; al contrario ha un risultato di falso. Questo ci permette di reagire a questo fallimento usando una dichiarazione if: $dbcnx localhost, root, mypasswd ); if (!$dbcnx) { echo <p>unable to connect to the. database server at this time.</p> ); exit(); Ci sono tre trucchi nuovi in questa porzione di codice. In primo luogo abbiamo posizionato un davanti alla funzione mysql_connect. Molte funzioni, compresa mysql_connect, mostrano automaticamente terribili messaggi d errore quando non funzionano. Mettere un (conosciuto anche come operatore di soppressione errori) di fronte al nome della funzione dice alla funzione, eventualmente, di funzionare silenziosamente e ci permette di mostrare un nostro messaggio di errore, più amichevole. Successivamente abbiamo messo un punto esclamativo (!) davanti alla variabile $dbcnx,nella condizione della dichiarazione if. Il punto esclamativo è l operatore di negazione di PHP che tramuta un valore falso in uno vero o viceversa. Quindi, se la connessione fallisce e mysql_connect ha un risultato di falso,!$dbcnx sarà vero e porterà in esecuzione il corpo della nostra dichiarazione if. Alternativamente, se viene creata una connessione, l identificatore di connessione immagazzinato in $dbcnx sarà vero (qualsiasi numero maggiore di zero è considerato true da PHP), in questo modo sarà valutato falso!$dbcnx e la dichiarazione nella dichiarazione if non sarà eseguita. 61

4 Creare siti Web con PHP e MySQL L ultimo trucco è nella funzione exit, che è il primo esempio di funzione che abbiamo incontrato e che può essere richiamata senza parametri. Se viene richiamata in questo modo, tutto quello che fa è obbligare PHP a smettere di leggere la pagina in quel punto. Questa è una buona risposta a una connessione a un database non riuscita, perché nella maggior parte dei casi la pagina non sarà in grado di mostrare alcuna informazione utile senza quella connessione. Come anche visto nel Capitolo 2, Primi passi con MySQL, una volta stabilita la connessione, il passo successivo è quello di selezionare un database con il quale lavorare. Diciamo di lavorare con il database di barzellette che abbiamo creato nel Capitolo 2, Primi passi con MySQL.Il database che abbiamo creato si chiamava ijdb. Selezionare quel database in PHP è solo questione di usare un altra funzione: mysql_select_db( ijdb, $dbcnx); Da notare che usiamo la variabile $dbcnx, che contiene la connessione all identificatore di connessione per dire alla funzione quale connessione di database utilizzare. Questo parametro è effettivamente opzionale. Quando è omesso la funzione userà automaticamente il link dell identificatore dell ultima connessione aperta. Questa funzione ha un risultato vero quando ha successo e falso quando c è un errore. Ancora una volta è prudente usare una dichiarazione if per gestire gli errori: if ijdb )) { exit( <p>unable to locate the joke. database at this time.</p> ); Questa volta bisogna notare che, anziché assegnare il risultato della funzione a una variabile e dopo aver controllato se la variabile è vera o falsa, abbiamo semplicemente usato la funzione come condizione. Potrebbe sembrare un po strano, ma è usato molto comunemente come shortcut. Per verificare se la condizione è vera o falsa, PHP esegue la funzione e quindi controlla il suo valore di risposta esattamente ciò che avevamo bisogno accadesse. Un altro shortcut che abbiamo utilizzato è richiamare exit con un parametro di stringa. Quando viene richiamato con un parametro, exit funziona come una dichiarazione echo, eccetto per il fatto che lo script comincia a esistere dopo che la stringa è eseguita. Far riferimento a exit, in questo modo, è uguale a far riferimento a una dichiarazione echo seguita da exit senza alcun parametro, che è quella che abbiamo usato sopra mysql_connect. Con una connessione stabilita e un database selezionato siamo pronti a utilizzare i dati immagazzinati nel database. Inviare le query SQL con PHP Nel Capitolo 2, Primi passi con MySQL, ci siamo connessi al server database MySQL usando un programma chiamato mysql, che ci permetteva di digitare le query (comandi) di SQL e di 62

5 Capitolo 4: Pubblicare i dati MySQL sul Web vedere immediatamente i risultati di quelle query. In PHP esiste un meccanismo simile: la funzione mysql_query mysql_query(query[, connection_id]) In questo caso query è la stringa che contiene i comandi SQL che vogliamo eseguire. Come anche con mysql_select_db, il parametro dell identificatore di connessione è opzionale. Il risultato di questa funzione dipenderà dal tipo di query eseguita. Per la maggior parte dei comandi SQL mysql_query ha come risultato o vero o falso (true o false), per indicare rispettivamente il successo o l insuccesso. Considerate i seguenti esempi che mirano a creare la tabella di barzellette che abbiamo già creato nel Capitolo 2, Primi passi con MySQL: $sql = CREATE TABLE joke ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, joketext TEXT, jokedate DATE NOT NULL ) ; if { echo <p>joke table successfully created!</p> ; else { exit( <p>error creating joke table:. mysql_error(). </p> ); Usiamo di nuovo il per evitare ogni messaggio di errore prodotto da mysql_query e lo sostituiamo con un messaggio di errore più amichevole. La funzione mysql_error qui ha avuto come responso una stringa di testo che descrive l ultimo messaggio di errore che è stato inviato dal server MySQL. Per le query DELETE, INSERT e UPDATE (che sono utilizzate per modificare i dati immagazzinati), MySQL conserva una traccia del numero delle righe di tabelle (record) che sono state interessate dalle query. Considerate il comando SQL, che abbiamo usato nel Capitolo 2, Primi passi con MySQL per modificare la data di tutte le barzellette che contenevano la parola chicken : $sql = UPDATE joke SET jokedate= WHERE joketext LIKE %chicken% ; Quando eseguiamo questa query, possiamo usare la funzione mysql_affected_rows per vedere il numero di righe che sono interessate da questo aggiornamento: if { echo <p>update affected. mysql_affected_rows(). rows.</p> ; else { exit( <p>error performing update:. mysql_error(). </p> ); 63

6 Creare siti Web con PHP e MySQL Le query con SELECT devono essere trattate in un modo leggermente differente, perché possono interessare una grande quantità di dati e PHP deve fornire dei modi per gestire queste informazioni. Gestire i set di risultati del comando SELECT Per la maggior parte delle query di SQL, la funzione mysql_query ha come risultato o true (successo) o false (insuccesso). Per le query SELECT questo non è sufficiente. Vi ricorderete che le query SELECT sono utilizzate per visionare i dati immagazzinati nel database. PHP, oltre a indicare se la query ha avuto successo o meno, deve anche ricevere i risultati della query. Quindi, quando processa la query SELECT, mysql_query ha come risultato un numero che identifica una serie di risultati e che contiene l elenco delle righe (record) che si sono avute come risultati della query. Il risultato false viene dato se la query fallisce per qualche ragione. $result SELECT JokeText FROM Jokes ); if (!$result) { exit( <p>error performing query:. mysql_error(). </p> ); Dopo essersi assicurato che non è stato incontrato alcun errore nel processare la query, il codice posizionerà un numero all interno della variabile $result. Questo numero corrisponde al set dei risultati che contiene il testo di tutte le barzellette nella tabella degli scherzi. Non essendoci nessun limite pratico al numero di scherzi nel database, il risultato può essere considerevolmente grande. Abbiamo detto prima che il ciclo while è un utile struttura di controllo per gestire grandi quantità di dati. Quello che segue è un possibile abbozzo di codice che processerà le righe di un set di risultati una alla volta: while ($row = mysql_fetch_array($result)) { // process the row... La condizione per il ciclo while probabilmente non assomiglia alle condizione a cui siete abituati, quindi lasciateci spiegare come funziona. Considerate la condizione come una dichiarazione separata: $row = mysql_fetch_array($result); La funzione mysql_fetch_array accetta il numero del set di risultati come un parametro (immagazzinato nella variabile $result in questo caso) e mostra come risultato la riga successiva nel set di risultati come in un array (ritornate al Capitolo 3, Primi passi con PHP per una discussione sugli array). Quando non ci sono più righe nella serie di risultati, mysql_fetch_array dà come risultato false. 64

7 Capitolo 4: Pubblicare i dati MySQL sul Web La dichiarazione assegna un valore alla variabile $row ma, allo stesso tempo, l intera dichiarazione prende lo stesso valore. Questo è ciò che vi permette di usare la dichiarazione come una condizione nel ciclo while. Poiché un ciclo while continuerà a lavorare finché la sua condizione viene valutata falsa, questo ciclo avverrà tante volte quante sono le righe nella serie di risultati, mentre $row prenderà il valore della riga successiva ogni volta che il loop verrà eseguito. Tutto quello che rimane da fare è capire come ricavare i valori dalla variabile $row ogni volta che è eseguito il loop. Le righe di una serie di risultati che si sono avute come risultato da mysql_fetch_array sono rappresentate come array associativi. Gli indici prendono il nome dalla colonna della tabella nel set di risultati. Se $row è una riga del nostro set di risultati, allora $row[ joketext ] è il valore nella colonna joketext di quella riga. Ed ecco come dovrebbe apparire il nostro ciclo while se volessimo stampare il testo di tutte le barzellette nel nostro database: while ($row = mysql_fetch_array($result)) { echo <p>. $row[ joketext ]. </p> ; Ricapitolando: questo è il codice completo di una pagina Web PHP che si connetterà al nostro database, andrà a trovare il testo di tutte le barzellette nel database e le mostrerà in paragrafi HTML: Esempio 4.1. jokelist.php <!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN > <html xmlns= > <head> <title>our List of Jokes</title> <meta http-equiv= content-type content= text/html; charset=iso /> </head> <body> <?php // Connettiti col server database $dbcnx localhost, root, mypasswd ); if (!$dbcnx) { exit( <p>unable to connect to the. database server at this time.</p> ); // Seleziona il database delle barzellette if ijdb )) { exit( <p>unable to locate the joke. database at this time.</p> );?> <p>here are all the jokes in our database:</p> 65

8 Creare siti Web con PHP e MySQL <blockquote> <?php // Richiedi il testo di tutte le barzellette $result SELECT joketext FROM joke ); if (!$result) { exit( <p>error performing query:. mysql_error(). </p> ); // Mostra il testo di ogni barzelletta in un paragrafo while ($row = mysql_fetch_array($result)) { echo <p>. $row[ joketext ]. </p> ;?> </blockquote> </body> </html> La figura 4.2 mostra come appare questa pagina una volta che avete aggiunto una paio di barzellette al database. Figura 4.2. Tutto il mio repertorio in una sola pagina! Inserire i dati nel database In questa sezione vedremo come utilizzare gli strumenti a nostra disposizione per permettere ai visitatori del sito di aggiungere le loro barzellette al database. Se vi piacciono le sfide potreste cercare di pensare un modo da soli, prima di andare avanti a leggere. Ci sono un paio di cose nuove in questa sezione, ma per la maggior parte è solo un applicazione di esempio che comprende tutto quello che abbiamo imparato fino a qui. Se volete che i visitatori del vostro sito inseriscano nuove barzellette avrete ovviamente bisogno di un form. Ecco un codice per un form che fa al caso nostro: 66

9 Capitolo 4: Pubblicare i dati MySQL sul Web Esempio 4.2. jokes.php (esercitazione) <form action= <?php echo $_SERVER[ PHP_SELF ];?> method= post > <label>type your joke here:<br /> <textarea name= joketext rows= 10 cols= 40 > </textarea></label><br /> <input type= submit value= SUBMIT /> </form> La figura 4.3 mostra come appare questo form in un browser. Figura 4.3. Un altra perla di comicità è aggiunta al database. Come abbiamo visto prima, una volta inviato, questo form caricherà la stessa pagina (poiché abbiamo la variabile $_SERVER[ PHP_SELF ] per l attributo di azione del form) con una differenza: una variabile sarà compresa nella richiesta. La variabile joketext conterrà il testo della barzelletta come è stato digitato nell area di testo e apparirà negli array $_POST e $_REQUEST creati da PHP. Per inserire la barzelletta inviata al database usiamo mysql_query per eseguire una query INSERT, utilizzando il valore immagazzinato in $_POST[ joketext ] per completare la colonna joketext nella query: Esempio 4.3. jokes.php (esercitazione) if (isset($_post[ joketext ])) { $joketext = $_POST[ joketext ]; $sql = INSERT INTO joke SET joketext= $joketext, 67

10 Creare siti Web con PHP e MySQL jokedate=curdate() ; if { echo <p>your joke has been added.</p> ; else { echo <p>error adding submitted joke:. mysql_error(). </p> ; Il nuovo trucco in questo esempio è mostrato in grassetto. La funzione MySQL CURDATE() è utilizzata qui per assegnare la data corrente come valore della colonna jokedate. MySQL effettivamente ha dozzine di queste funzioni, ma le mostreremo solo se sarà necessario. Per i riferimenti completi alle funzioni MySQL fate riferimento all Appendice B, Funzioni MySQL. Abbiamo il codice che permetterà di digitare una barzelletta e aggiungerla al nostro database. Tutto quello che rimane da fare è inserirla nella nostra pagina esistente in un modo efficace. Poiché la maggior parte degli utenti vorrà visualizzare le barzellette, non vogliamo rovinare la nostra pagina con grossi e brutti caratteri, a meno che l utente non esprima interesse nell aggiungere nuove barzellette. Per questa ragione la nostra applicazione è ben progettata per implementare pagine multiuso. Ecco il codice completo: Esempio 4.4. jokes.php <!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN > <html xmlns= > <head> <title>the Internet Joke Database</title> <meta http-equiv= content-type content= text/html; charset=iso /> </head> <body> <?php if (isset($_get[ addjoke ])): // L utente vuole aggiungere una barzelletta?> <form action= <?php echo $_SERVER[ PHP_SELF ];?> method= post > <label>type your joke here:<br /> <textarea name= joketext rows= 10 cols= 40 > </textarea></label><br /> <input type= submit value= SUBMIT /> </form> <?php else: // Default page display // Connettiti al server database $dbcnx localhost, root, mypasswd ); if (!$dbcnx) { exit( <p>unable to connect to the. database server at this time.</p> ); 68

11 Capitolo 4: Pubblicare i dati MySQL sul Web // Seleziona il database delle barzellette if ijdb )) { exit( <p>unable to locate the joke. database at this time.</p> ); // Se una barzelletta viene inviata // aggiungila al database if (isset($_post[ joketext ])) { $joketext = $_POST[ joketext ]; $sql = INSERT INTO joke SET joketext= $joketext, jokedate=curdate() ; if { echo <p>your joke has been added.</p> ; else { echo <p>error adding submitted joke:. mysql_error(). </p> ; echo <p>here are all the jokes in our database:</p> ; // Richiedi il testo di tutte le barzellette $result SELECT joketext FROM joke ); if (!$result) { exit( <p>error performing query:. mysql_error(). </p> ); // Mostra il testo di ogni barzelletta in un paragrafo while ($row = mysql_fetch_array($result)) { echo <p>. $row[ joketext ]. </p> ; // Questo link caricherà la pagina // con il form di invio della barzelletta echo <p><a href=. $_SERVER[ PHP_SELF ].?addjoke=1 >Add a Joke!</a></p> ; endif;?> </body> </html> Caricatela e aggiungete al database una barzelletta o due utilizzando il vostro browser. La pagina risultante dovrebbe essere come mostrato nella figura 4.4. Perfetto! Con un singolo file che contiene un po di codice PHP siamo in grado di vedere le barzellette esistenti e aggiungerne di nuove. 69

12 Creare siti Web con PHP e MySQL Figura 4.4. Guarda, Ma! Niente SQL! Una sfida Come compitino provate a immaginare come posizionare sulla pagina, a fianco di ogni barzelletta, un link con un pulsante Delete this joke (Elimina questa barzelletta) che, quanto viene attivato, rimuove quella barzelletta dal database e mostra un elenco di barzellette aggiornato. Ecco un paio di suggerimenti per iniziare: Sarete in grado di farlo sempre in una pagina multiuso. Dovrete usare il comando SQL DELETE che abbiamo visto per la prima volta nel Capitolo 2, Primi passi con MySQL. Questo è il suggerimento più importante: per cancellare una barzelletta in modo specifico, dovrete essere in grado di identificarla univocamente. La colonna id nella tabella delle barzellette è stata progettata per questo motivo. Dovrete far passare l id della barzelletta da cancellare assieme alla richiesta di cancellazione della barzelletta. La stringa della query del pulsante Delete this joke è un posto perfetto in cui posizionare questo valore. Se pensate di avere la risposta, o se vi piacerebbe vedere la soluzione voltate pagina. Buona fortuna! Riepilogo In questo capitolo avete imparato le funzioni PHP in grado di interfacciarvi con il server database MySQL. Usando queste funzioni avete costruito il vostro primo sito Web basato su un database che mostra on-line il database ijdb e che permette ai visitatori di aggiungere le barzellette. 70

13 Capitolo 4: Pubblicare i dati MySQL sul Web Nel Capitolo 5, Progettazione di database relazionali, torneremo indietro alle righe di comando MySQL. Impareremo a usare i principi dei database relazionali e le query avanzate per rappresentare tipi più complessi di informazione e per dare ai nostri visitatori il merito delle barzellette che inseriscono. Soluzione della sfida Ecco la soluzione al compitino dato prima. Bisognava fare questi cambiamenti per inserire un pulsante Delete this joke a fianco di ogni barzelletta: In precedenza abbiamo fatto passare una variabile addjoke con il pulsante Add a Joke! alla fine di ogni pagina, per segnalare che il nostro script avrebbe dovuto mostrare il form di immissione della barzelletta, invece del solito elenco di barzellette. Allo stesso modo dobbiamo far passare una variabile deletejoke con il nostro pulsante Delete this joke per indicare il nostro desiderio di cancellare una barzelletta. Per ogni barzelletta rintracciamo la colonna id dal database insieme alla colonna joketext, in modo da sapere quale id è associato con ogni barzelletta nel database. Dobbiamo far coincidere il valore della variabile $_GET[ deletejoke ] all id della barzelletta che stiamo cancellando. Per fare ciò inseriamo il valore dell id trovato nel database all interno del codice HTML apposta per il pulsante Delete this joke di ogni barzelletta. Usando una dichiarazione if verifichiamo se $_GET[ deletejoke ] è configurata su un valore specifico (attraverso la funzione isset), quando la pagina si carica. Se è così, utilizziamo il valore sulla quale è configurata (l id della barzelletta da cancellare) con una dichiarazione DELETE di SQL, che cancella la barzelletta in questione. Questo è il codice completo. Se avete qualche domanda non esitate a sottoporla al sito di SitePoint! Esempio 4.5. challenge.php <!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN > <html xmlns= > <head> <title>the Internet Joke Database</title> <meta http-equiv= content-type content= text/html; charset=iso /> </head> <body> <?php if (isset($_get[ addjoke ])): // L utente vuole aggiungere una barzelletta?> <form action= <?php echo $_SERVER[ PHP_SELF ];?> method= post > <label>type your joke here:<br /> <textarea name= joketext rows= 10 cols= 40 > </textarea></label><br /> 71

14 Creare siti Web con PHP e MySQL <input type= submit value= SUBMIT /> </form> <?php else: // Mostra la pagina di default // Connettiti al server database $dbcnx localhost, root, mypasswd ); if (!$dbcnx) { exit( <p>unable to connect to the. database server at this time.</p> ); // Seleziona il database delle barzellette if ijdb )) { exit( <p>unable to locate the joke. database at this time.</p> ); // Se una barzelletta è stata inviata, // aggiungila al database. if (isset($_post[ joketext ])) { $joketext = $_POST[ joketext ]; $sql = INSERT INTO joke SET joketext= $joketext, jokedate=curdate() ; if { echo <p>your joke has been added.</p> ; else { echo <p>error adding submitted joke:. mysql_error(). </p> ; // Se una barzelletta è stata cancellata // rimuovila dal database. if (isset($_get[ deletejoke ])) { $jokeid = $_GET[ deletejoke ]; $sql = DELETE FROM joke WHERE id=$jokeid ; if { echo <p>the joke has been deleted.</p> ; else { echo <p>error deleting joke:. mysql_error(). </p> ; echo <p> Here are all the jokes in our database: </p> ; // Richiedi l ID e il testo di tutte le barzellette $result SELECT id, joketext FROM joke ); if (!$result) { exit( <p>error performing query:. mysql_error(). </p> ); 72

15 Capitolo 4: Pubblicare i dati MySQL sul Web // Mostra il testo di ogni barzelletta in un paragrafo // con un pulsante Delete this joke a fianco di ognuna. while ($row = mysql_fetch_array($result)) { $jokeid = $row[ id ]; $joketext = $row[ joketext ]; echo <p>. $joketext. <a href=. $_SERVER[ PHP_SELF ].?deletejoke=. $jokeid. >. Delete this joke</a></p> ; // Quando viene premuto, il link caricherà questa pagina // con mostrato il form di immissione della barzelletta. echo <p><a href=. $_SERVER[ PHP_SELF ].?addjoke=1 >Add a Joke!</a></p> ; endif;?> </body> </html> 73

16

PHP e MySQL. Scripting server-side per accesso a DB MySQL

PHP e MySQL. Scripting server-side per accesso a DB MySQL PHP e MySQL Scripting server-side per accesso a DB MySQL Connessione a un DB MySQL Prima di accedere ai dati è necessario creare una connessione con il DB In PHP si utilizza la funzione mysql_connect,

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

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

PHP. A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas. Copyright Istituto Italiano Edizioni Atlas

PHP. A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas. Copyright Istituto Italiano Edizioni Atlas PHP A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas Copyright Istituto Italiano Edizioni Atlas Programmazione lato server PHP è un linguaggio che estende le funzionalità

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

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN Il metodo migliore per creare nuovi DB è quello di usare l interfaccia del PHPMYADMIN (che viene installata automaticamente con il pacchetto easy

Dettagli

APPUNTI DI PHP : V INFORMATICA SEZIONE G

APPUNTI DI PHP : V INFORMATICA SEZIONE G APPUNTI DI PHP : V INFORMATICA SEZIONE G Prof. Conti R. mysql_connect() Apre una connessione verso un DB MySQL. $db = mysql_connect([$db_host[, $db_username[, $db_password[, $newlink[,$clientflags]]]]]);

Dettagli

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.b Interazione con un database (MySQL Server)

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.b Interazione con un database (MySQL Server) MODULO 1 PARTE 3 Programmazione (scripting) server-side con PHP 3.b Interazione con un database (MySQL Server) Goy - a.a. 2009/2010 Programmazione Web 1 Informazione persistente Se vogliamo tener traccia

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

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

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

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

PHP. Per poter interagire con i dati che si trovano sul server remoto occorrono strumenti server-side.

PHP. Per poter interagire con i dati che si trovano sul server remoto occorrono strumenti server-side. PHP Il linguaggio HTML e i linguaggi di scripting come Javascript impongono alcune limitazioni alle applicazioni che si possono realizzare : per esempio non è possibile costruire un sito Web che consenta

Dettagli

PHP: form, cookies, sessioni e. Pasqualetti Veronica

PHP: form, cookies, sessioni e. Pasqualetti Veronica PHP: form, cookies, sessioni e mysql Pasqualetti Veronica Form HTML: sintassi dei form 2 Un form HTML è una finestra contenente vari elementi di controllo che consentono al visitatore di inserire informazioni.

Dettagli

Architettura a tre livelli (1)

Architettura a tre livelli (1) Elaborazione Automatica dei Dati Php e MySQL Enrico Cavalli Anno Accademico 2012-2013 Architettura a tre livelli (1) Le applicazioni sono sviluppate secondo una architettura a tre livelli, affermatasi

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

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

Perchè un database? Perchè un database? Tipi di DataBase. Scegliere un database. ! Sicurezza. ! Evitare la ridondanza. ! Architettura multilivello

Perchè un database? Perchè un database? Tipi di DataBase. Scegliere un database. ! Sicurezza. ! Evitare la ridondanza. ! Architettura multilivello ! Evitare la ridondanza Perchè un database? Avere PHP che assembla le pagine velocemente da un modello ed un DB è un esperienza unica. Con lo sforzo di programmazione di una pagina, si possono produrre

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2013/2014

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2013/2014 Laboratorio Progettazione Web PHP e MySQL Andrea Marchetti IIT-CNR 2013/2014 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation Application Storage PHP e DataBase Quando

Dettagli

Esercizi ed appunti PHP

Esercizi ed appunti PHP Indice 1. Informazioni sulla versione PHP installata... 2 2. Generatore di numeri random... 2 3. Contatore di visitatori... 2 4. Programma di inserimento di un nuovo record in un file... 4 scrivi_record.htm...

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

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

PHP e Structured Query Language

PHP e Structured Query Language Esercitazioni del corso di Tecnologie per la Comunicazione Aziendale PHP e Structured Query Language Marco Loregian loregian@disco.unimib.it www.siti.disco.unimib.it/didattica/tca2008 Interrogazioni (ripasso)

Dettagli

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

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

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

Lavorare con MySQL Parte Seconda.

Lavorare con MySQL Parte Seconda. Lavorare con MySQL Parte Seconda. PHP, dalla versione 4.0, usufruisce difunzioni native per colloquiare con MySQL, senza appoggiarsi ad alcuna libreria o modulo esterno. In questa lezione verranno esaminate

Dettagli

PHP e MySQL. Guida scaricata da www.webstyling.it

PHP e MySQL. Guida scaricata da www.webstyling.it Home -> Manuali & Tutorials -> Guida PHP PHP e MySQL E' possibile realizzare delle applicazioni in php appoggiandosi ad un database, quale ad esempio MySQL. Con le novità introdotte ai tempi di MySQL 4.1

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

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com 15.03.2006 Ver. 1.0 Scarica la versione pdf ( MBytes) Nessuno si spaventi! Non voglio fare né un manuale

Dettagli

Quesiti 6 e 7) - 9 - Creiamo il file query4.php su una piattaforma OPEN SOURCE usando in linguaggio PHP ospitato su un webserver APACHE per interrogare un database MYSQL. Tale file verrà attivato cliccando

Dettagli

PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP)

PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP) PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP) Augusto Scatolini (webmaster@comunecampagnano.it) (a.scatolini@linux4campagnano.net) Miniguida n. 183 Ver. 1.0 aprile 2013 La prima guida

Dettagli

Il linguaggio HTML - Parte 3

Il linguaggio HTML - Parte 3 Corso IFTS Informatica, Modulo 3 Progettazione pagine web statiche (50 ore) Il linguaggio HTML - Parte 3 Dott. Chiara Braghin braghin@dti.unimi.it Addenda Vedi tabella caratteri speciali Vedi file caratteri_speciali.html

Dettagli

Lavorare con MySQL Parte Prima.

Lavorare con MySQL Parte Prima. Lavorare con MySQL Parte Prima. Data la particolarità dell argomento, ho deciso di dividerlo in due lezioni. Nella prima, si parlerà diffusamente di MySQL, cos è un DBMS, cos è l SQL, i campi supportati

Dettagli

Laboratorio di Tecnologie Web Laurea in Scienze e Tecnologie Multimediali

Laboratorio di Tecnologie Web Laurea in Scienze e Tecnologie Multimediali Laboratorio di Tecnologie Web Laurea in Scienze e Tecnologie Multimediali Docente: Carlo Drioli 31 marzo 2015 Esempio I prova infracorso Esercizio 1 Si consideri un applicazione per la gestione di menu

Dettagli

Nozioni di base sull utilizzo di PHP e di MySQL

Nozioni di base sull utilizzo di PHP e di MySQL Nozioni di base sull utilizzo di PHP e di MySQL Che cos è PHP? Mi sento in dovere prima di iniziare ad illustrare le nozioni di base di PHP introdurre dicendo PHP che cos è in sostanza; fino a qualche

Dettagli

MySQL Database Management System

MySQL Database Management System MySQL Database Management System II parte Progetto gestione booking prenotazioni on-line 1. Progettazione e creazione struttura database che chiameremo booking. 2. Progettazione e creazione di un form

Dettagli

Indice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28

Indice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28 Indice 25 184 Introduzione XI Capitolo 1 Impostazione dell ambiente di sviluppo 2 1.1 Introduzione ai siti Web dinamici 2 1.2 Impostazione dell ambiente di sviluppo 4 1.3 Scaricamento di Apache 6 1.4 Installazione

Dettagli

Questo punto richiederebbe uno sviluppo molto articolato che però a mio avviso va al di là delle possibilità fornite al candidato dal tempo a disposizione. Mi limiterò quindi ad indicare dei criteri di

Dettagli

Un client su arduino invia i dati acquisiti ad un database

Un client su arduino invia i dati acquisiti ad un database Un client su arduino invia i dati acquisiti ad un database PROBLEMA Si vogliono inviare, periodicamente, i dati acquisiti da alcuni sensori ad un database presente su di un server. Arduino con shield Ethernet

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

bool mysql_select_db([string database_name [,resource link_identifier]]) Connessione ad un server MySQL vuole conettere

bool mysql_select_db([string database_name [,resource link_identifier]]) Connessione ad un server MySQL vuole conettere Connessione ad un server MySQL resource mysql_connect ([string server [, string username [, string password [, bool new_link [, int client_flags]]]]]) server nome o indirizzo del server username nome utente

Dettagli

WHITE PAPER Per Sql-Injection si intendono comunemente tutti quegli attacchi ad un'applicazione, solitamente Web, in cui il programma esegue query su di un database SQL utilizzando variabili passate dall'utente

Dettagli

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base... 45 Variabili, operatori e commenti... 47 Array...

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base... 45 Variabili, operatori e commenti... 47 Array... Prefazione...xiii A chi si rivolge il libro... xiv Struttura e contenuti del libro... xiv Dove trovare aiuto... xvii Le newsletter di SitePoint... xviii I vostri commenti... xviii Convenzioni adottate

Dettagli

PHP + MySQL. Programmazione lato server. Cosa vediamo. web server. database server. request. response. web client

PHP + MySQL. Programmazione lato server. Cosa vediamo. web server. database server. request. response. web client Programmazione lato server PHP + MySQL Cosa vediamo web server request response web client database server 1 Cosa vediamo browser Apache PHP engine MySQL server MySQL MySQL is a very fast, robust, relational

Dettagli

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server 2) Il Server richiama l'interprete PHP il quale esegue i comandi contenuti nel file.php specificato nell'attributo action del tag form creando un file HTML sulla base dei dati inviati dall utente 1) Il

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

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

Le mie immagini su WEB: l ABC per iniziare. 6 maggio 2008

Le mie immagini su WEB: l ABC per iniziare. 6 maggio 2008 Le mie immagini su WEB: l ABC per iniziare 6 maggio 2008 1 1) Le nostre immagini su internet; perchè? 2) il WEB...il pc di chi accede (il client)...il sito (server); 3) costruzione del sito (design, strumenti

Dettagli

Presentazione del progetto

Presentazione del progetto Esempio Progetto PHP Un piccolo negozio online CORSO: Master di primo livello in tecnologie sicurezza web e networking Docente: Dott.ssa Daniela Remogna www.fimietta.it 1 Presentazione del progetto L azienda

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

M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2009 Seconda prova scritta M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA Tema di: INFORMATICA (Testo valevole per i corsi di

Dettagli

MySQL Command Line Client: operazioni fondamentali

MySQL Command Line Client: operazioni fondamentali MySQL Command Line Client: operazioni fondamentali INTRODUZIONE Il RDBMS MySQL, oltre a fornire un applicazione che abbia un interfaccia user-friendly, ha a disposizione anche un altro client, che svolge

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

PHP + MySQL. Programmazione lato server. Cosa vediamo. MySQL. MySQL: comandi utili. MySQL: accesso al server. web server.

PHP + MySQL. Programmazione lato server. Cosa vediamo. MySQL. MySQL: comandi utili. MySQL: accesso al server. web server. Cosa vediamo web server Programmazione lato server PHP + MySQL request response web client database server Cosa vediamo MySQL browser Apache PHP engine MySQL server MySQL is a very fast, robust, relational

Dettagli

PHP - Storia. Inizialmente sviluppato da Rasmus Lerdorf come serie di script CGI

PHP - Storia. Inizialmente sviluppato da Rasmus Lerdorf come serie di script CGI PHP PHP - Storia Inizialmente sviluppato da Rasmus Lerdorf come serie di script CGI Al progetto si unirono Zeev Suraski e Andi Gutmans che ne scrissero l'interprete Zend Oggi è alla versione 5 e può essere

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

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE TABELLA ATTORI

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE TABELLA ATTORI Nicoletta Barbaro 4C Mercurio TRACCIA DEL PROBLEMA: RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE TABELLA ATTORI Un'azienda che distribuisce film in formato dvd chiede ad una software house(4c mercurio)

Dettagli

Introduzione a PHP Gestione dei Dati e della Conoscenza

Introduzione a PHP Gestione dei Dati e della Conoscenza Introduzione a PHP Gestione dei Dati e della Conoscenza Diego De Cao, Roberto Basili {decao,basili}@info.uniroma2.it a.a. 2008/2009 PHP Overview PHP (acronimo ricorsivo per "PHP: Hypertext Preprocessor")

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

Laboratorio di sistemi Web Application in Php5 Php

Laboratorio di sistemi Web Application in Php5 Php Applicazioni web con Xampp, Php5 e NetBeans 6.5 (Windows) Vogliamo ora riscrivere a titolo di prova un'applicazione web precedentemente scritta in Java (si legga l'articolo all'indirizzo http://www.mauriziocozzetto.net/pdf/dao_mysql.pdf).

Dettagli

Lezione nr. 5. Per creare un modulo è necessario avere delle conoscenze di base del linguaggio HTML. Niente di difficile ovviamente!

Lezione nr. 5. Per creare un modulo è necessario avere delle conoscenze di base del linguaggio HTML. Niente di difficile ovviamente! Lezione nr. 5 >> Come creare un modulo Web I moduli web sono delle strutture fondamentali per ogni sito web e la loro conoscenza ti permetterà di risolvere almeno il 60% delle problematiche di gestione

Dettagli

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA GESTIONE MEDIAWORLD

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA GESTIONE MEDIAWORLD Baroni Nicoletta, Carini Giulia, Valentina Porchera, Christian Pala 4C Mercurio RELAZIONE SCRITTA RELATIVA AL PROGRAMMA GESTIONE MEDIAWORLD Traccia del problema: Realizzare la procedura in php con Mysql

Dettagli

Form Editor. Dove NomeProfilo è personalizzabile.

Form Editor. Dove NomeProfilo è personalizzabile. Form Editor Il tema permette di generare automaticamente dei moduli per la raccolta di dati in tre semplici step: 1. Si crea una tabella nel database per la raccolta dei dati. Per la creazione si parte

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

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

Interazione con l utente : i moduli.

Interazione con l utente : i moduli. Interazione con l utente : i moduli. Nelle lezioni fin qui riportate, non abbiamo mai trattato l input di utente. Nelle applicazioni web, l input dell utente si acquisisce tramite i moduli (o FORM) HTML.

Dettagli

Metodologie Informatiche Applicate al Turismo

Metodologie Informatiche Applicate al Turismo Metodologie Informatiche Applicate al Turismo 9. HTML Parte II Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea in Scienze

Dettagli

Concetti fondamentali dei database database Cos'è un database Principali database

Concetti fondamentali dei database database Cos'è un database Principali database Concetti fondamentali dei database Nella vita di tutti i giorni si ha la necessità di gestire e manipolare dati. Le operazioni possono essere molteplici: ricerca, aggregazione con altri e riorganizzazione

Dettagli

phpmyedit con codice offuscato (Editor istantaneo di tabelle MySQL e generatore di codice PHP, open source)

phpmyedit con codice offuscato (Editor istantaneo di tabelle MySQL e generatore di codice PHP, open source) phpmyedit con codice offuscato (Editor istantaneo di tabelle MySQL e generatore di codice PHP, open source) Augusto Scatolini (webmaster@comunecampagnano.it) Ver. 1.0 Marzo 2011 Dopo aver visto DaDaBIK

Dettagli

RenderCAD S.r.l. Formazione

RenderCAD S.r.l. Formazione Corso Descrizione La durata di questo corso è complessivamente di ore 150 di cui 85 ore di teoria, 35 ore di pratica e 30 ore di stage in azienda. Nel nostro territorio esiste una richiesta di tale figura,

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

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

Università degli Studi di Cagliari Corso di Laurea in Ingegneria delle Telecomunicazioni. http://www.diee.unica.it/~giacinto/bd

Università degli Studi di Cagliari Corso di Laurea in Ingegneria delle Telecomunicazioni. http://www.diee.unica.it/~giacinto/bd Università degli Studi di Cagliari Corso di Laurea in Ingegneria delle Telecomunicazioni BASI DI DATI http://www.diee.unica.it/~giacinto/bd Esercitazione su PHP & PostgreSQL Docente: Giorgio Giacinto A.A.

Dettagli

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7 Il trattamento dei dati database: il linguaggio SQL seconda parte Prof. Valle D.ssa Folgieri Lez9 15.11.06 Trattamento dati. Database: il

Dettagli

PYTHON Inviare dati con i form A cura di Silvio Bonechi [sabandini_at_tiscali_dot_it] per http://www.pctrio.com

PYTHON Inviare dati con i form A cura di Silvio Bonechi [sabandini_at_tiscali_dot_it] per http://www.pctrio.com PYTHON Inviare dati con i form A cura di Silvio Bonechi [sabandini_at_tiscali_dot_it] per http://www.pctrio.com 10.07.2006 Ver. 1.0 In questo articolo vedremo come gestire con un FORM l invio di dati ad

Dettagli

MANUALE ESSENZIALE MYSQL

MANUALE ESSENZIALE MYSQL Autore: Classe: Luciano Viviani TERZA INFORMATICA SERALE (3IS) Anno scolastico: 2003/2004 Scuola: Itis Euganeo MANUALE ESSENZIALE MYSQL Manuale La dispensa vuole fornire agli studenti delle classi quinte

Dettagli

La connessione php-mysql con MySQLi

La connessione php-mysql con MySQLi La connessione php-mysql con MySQLi Premessa Lo scenario che si intende alla base di questo capitolo è di disporre di un ambiente phpmysql rappresentato nel seguente schema: L'applicazione php viene eseguita

Dettagli

Appunti di MySql. Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov.

Appunti di MySql. Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov. Appunti di MySql Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov. Indice generale avviare la shell mysql...2 comandi SQL per la gestione del database (DDL)...2 visualizzare l'elenco

Dettagli

Applicazione ASP di esempio

Applicazione ASP di esempio Applicazione ASP di esempio Database in rete Prof. Claudio Maccherani Un server web è un programma che gira su un computer sempre collegato ad Internet e che mette a disposizione file, pagine e servizi.

Dettagli

04/05/2011. Lezione 6: Form

04/05/2011. Lezione 6: Form 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

JDBC versione base. Le classi/interfacce principali di JDBC

JDBC versione base. Le classi/interfacce principali di JDBC JDBC versione base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte uno dei pregi è la completa indipendenza del codice

Dettagli

Guida a PHP. Primi esempi

Guida a PHP. Primi esempi Guida a PHP Php è un modulo aggiuntivo per web server che permette di creare delle pagine web dinamiche. Una pagina in Php è composta sia da tag html, sia da parti in codice di programmazione Php. Ogni

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

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

"MANUALETTO" SQL - PHP/HTML

MANUALETTO SQL - PHP/HTML "MANUALETTO" SQL - PHP/HTML Sommario Capitolo 1- Introduzione SQL... 4 Capitolo 2- Istruzioni DDL... 4 CREATE DATABASE ... 4 CREATE TABLE ... 4 Vincoli di ogni singolo attributo...

Dettagli

Data Base e Web. Internet

Data Base e Web. Internet Data Base e Web Applicazioni WEB e creazione pagine dinamiche Architettura CGI Architettura Java servlet Pagine dinamiche con PHP Progettazione applicazioni Web Il materiale è ripreso da [2] Albano, Ghelli,

Dettagli

SCP - Scuola di Calcolo Parallelo - Scheduler per programmi paralleli. Mattia Sessolo I.T.I.S. V.Volterra San Donà di Piave

SCP - Scuola di Calcolo Parallelo - Scheduler per programmi paralleli. Mattia Sessolo I.T.I.S. V.Volterra San Donà di Piave SCP - Scuola di Calcolo Parallelo - Scheduler per programmi paralleli Mattia Sessolo I.T.I.S. V.Volterra San Donà di Piave 2006-2007 Introduzione Questo programma è stato ideato per facilitare e automatizzare

Dettagli

HTML HTML. HyperText Markup Language. Struttura di un documento. Gli elementi essenziali di un documento HTML sono i seguenti TAG: ...

HTML HTML. HyperText Markup Language. Struttura di un documento. Gli elementi essenziali di un documento HTML sono i seguenti TAG: <HTML>... HTML HyperText Markup Language Struttura di un documento HTML Gli elementi essenziali di un documento HTML sono i seguenti TAG: ... ... ... Struttura di un documento

Dettagli

Corso di PHP. Prerequisiti. 6.1 PHP e il web 1. Conoscenza HTML Tecnica della programmazione Principi di programmazione web

Corso di PHP. Prerequisiti. 6.1 PHP e il web 1. Conoscenza HTML Tecnica della programmazione Principi di programmazione web Corso di PHP 6.1 PHP e il web 1 1 Prerequisiti Conoscenza HTML Tecnica della programmazione Principi di programmazione web 2 1 Introduzione In questa Unità illustriamo alcuni strumenti di programmazione

Dettagli

Installare Drupal7 su Altervista e non solo

Installare Drupal7 su Altervista e non solo Installare Drupal7 su Altervista e non solo This opera is published under a Creative Commons License. www.glider.altervista.org lukadg@gmail.com Guida per installare Drupal7 su Altervista. Questa guida

Dettagli

JDBC di base. Le classi/interfacce principali di JDBC

JDBC di base. Le classi/interfacce principali di JDBC JDBC di base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte completa indipendenza del codice dal tipo di database o di

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

HTML 1. HyperText Markup Language

HTML 1. HyperText Markup Language HTML 1 HyperText Markup Language Introduzione ad HTML Documenti HTML Tag di markup Formattazione del testo Collegamenti ipertestuali Immagini Tabelle Form in linea (moduli) Tecnologie di Sviluppo per il

Dettagli

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Laboratorio Progettazione Web PHP e FORMs HTML Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Struttura Applicazioni Web Browser Web HTTP Server Web API Dati Presentation Application Storage

Dettagli

JDBC: Introduzione. Java Database Connectivity (JDBC): parte 1. Schema dei legami tra le classi principali. Principali classi/interfacce di JDBC

JDBC: Introduzione. Java Database Connectivity (JDBC): parte 1. Schema dei legami tra le classi principali. Principali classi/interfacce di JDBC JDBC: Introduzione Java Database Connectivity (JDBC): parte 1 Gianluca Moro DEIS - Università di Bologna gmoro@deis.unibo.it Java Database Connectivity è il package Java per l accesso a database relazionali

Dettagli

Il linguaggio PHP Introduzione

Il linguaggio PHP Introduzione Pagina 1 di 11 Il linguaggio PHP Introduzione Il nome PHP, acronimo per Professional Home Pages, già la dice lunga sulla sua vocazione per la Rete: lo scopo del linguaggio è quello di consentire agli sviluppatori

Dettagli

Esercitazione sulle libpq - libreria C per PostgreSQL

Esercitazione sulle libpq - libreria C per PostgreSQL Esercitazione sulle libpq - libreria C per PostgreSQL Roberto Tronci roberto.tronci@diee.unica.it Basi di Dati A.A. 2007/2008 Tronci ( roberto.tronci@diee.unica.it ) Esercitazione libpq Basi di Dati 2007/2008

Dettagli