PHP PHP Hypertext Preprocessor. Programmazione lato server

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "PHP PHP Hypertext Preprocessor. Programmazione lato server"

Transcript

1 PHP PHP Hypertext Preprocessor Programmazione lato server 1

2 Building applications While many sites act as simple repositories, providing users with a collection of files they can retrieve and navigate through with hyperlinks, web sites are capable of much more sophisticated interactions.. Sites can collect informations from users through forms, customize their appearance and their content to reflect the interests of particular users, or let the users interact with a variety of information sources 2

3 Cosa vediamo 3

4 Cosa vediamo web server Comunicazione HTTP Apache Logica applicativa PHP Data source MySQL 4

5 Cosa vediamo 5

6 Architettura 3-tier (dal sito Microsoft) 6

7 Apache È un web server. Parla e capisce il protocollo http. Primo web server, sviluppato da Tim Berners-Lee presso il CERN. Predecessore di Apache: NCSA httpd server (1995). 7

8 PHP Open-source server-side scripting language sviluppato appositamente per il web. Il progetto inizia nel 1994 (Rasmus Lerdorf). Inizialmente PHP = Personal Home Page, poi diventa PHP Hypertext Preprocessor. 1998: PHP 3. Versione corrente: PHP

9 PHP HTML + JavaScript PHP Un file con codice PHP deve essere salvato in formato solo testo e con estensione.php. HTML + JavaScript PHP 9

10 Introduzione a PHP Linguaggio di scripting per realizzare pagine web dinamiche, il cui contenuto viene generato (dinamicamente) nel momento in cui queste vengono richieste al web server. Script PHP: pagina HTML nella quale viene inserito il codice PHP viene descritto come HTML-embedded. Il codice PHP viene eseguito sul server prima che la pagina venga inviata al browser, che vedrà solo il risultato finale. 10

11 Introduzione a PHP: esempio Ciao Script PHP: mondo! <html> <head><title>esempio 1</title></head> <body> <?php echo <h1>ciao mondo!</h1> ;?> </body> </html> Pagina inviata al browser: <html> <head><title>esempio 1</title></head> <body> <h1>ciao mondo!</h1> </body> </html> 11

12 Introduzione a PHP: come si Stile abbreviato inserisce il codice? <? codice PHP qui?> Stile classico <?php codice PHP qui?> Stile Microsoft ASP <% codice PHP qui %> Alternativa (utile con gli editor HTML visuali, come Front Page, che potrebbero non tollerare gli altri tipi di sintassi) <SCRIPT LANGUAGE= php > codice PHP qui </SCRIPT> 12

13 Introduzione a PHP: come si inserisce il codice? Le istruzioni devono essere separate tra loro dal ; Commenti // questo è un commento /* questo è un commento */ # questo è un commento 13

14 Le funzioni fondamentali: sintassi per le funzioni La sintassi per richiamare una funzione è la seguente: nome_funzione(valore1, valore2, ); È possibile che alcune funzioni non necessitino di alcun parametro. In questo caso, vanno comunque indicate le parentesi tonde. 14

15 Le funzioni fondamentali: phpinfo( ) phpinfo(): : genera dinamicamente una pagina contenente informazioni sulla versione di PHP installata e altre cosette, quali i nomi delle variabili predefinite. <html> <head><title>phpinfo()</title></head> <body> <?php phpinfo( );?> </body> </html> 15

16 Le funzioni fondamentali: echo echo: : serve per scrivere l output che viene inviato al browser che accede allo script. Non si tratta propriamente di una funzione, bensì di un costrutto del linguaggio; per questo non si usano le parentesi tonde. <html> <head><title>echo</title></head> <body> <?php echo <h1>benvenuto!</h1> ;?> </body> </html> 16

17 Le funzioni fondamentali: echo Grazie a echo si può visualizzare il contenuto delle variabili. <html> <head><title>echo</title></head> <body> <?php echo Benvenuto su. $_SERVER[ HTTP_HOST ];?> </body> </html> $_SERVER[ HTTP_HOST ]: variabile contenente il nome di dominio del sito su cui lo script viene eseguito. 17

18 Le funzioni fondamentali: exit( ) e die( ) exit() e die(): : arrestano l esecuzione dello script; die() consente anche di stampare un messaggio. Tali funzioni possono essere utilizzate per gestire eventuali situazioni di errore che non consentono la prosecuzione dello script. <html> <head><title>exit</title></head> <body> <? exit( );?> <p>questa frase non si vedrà</p> </body> </html> 18

19 Le funzioni fondamentali: esempi Nell esempio seguente controlliamo il valore della variabile $n e mostriamo un messaggio di errore, bloccando l esecuzione del programma, se tale variabile è maggiore di 1. <html> <head><title>die</title></head> <body> <? $n=5; if ($n>1) die( <h1>$n è maggiore di uno!!!</h1> ); echo <h1>$n è minore o uguale a uno!</h1> ;?> </body> </html> Vedere cosa succede sostituendo $n=5 con $n=1. 19

20 Variabili e tipi di dato: sintassi delle variabili I nomi delle variabili sono prefissati dal simbolo $ Esempio: $a = $b + $c serve per assegnare alla variabile a la somma dei valori delle variabili b e c. Il simbolo = è l operatore di assegnazione. In PHP, per creare una variabile, è sufficiente assegnarle un valore. Le variabili, cioè, non vanno dichiarate esplicitamente. Per visualizzare il valore di una variabile, come già visto, si usa echo. 20

21 Variabili e tipi di dato: sintassi delle costanti Il formato per assegnare il valore ad una costante è: define( nome_costante, il valore che si intende dare ); Esempio: define( FILM, Codice d onore ); define( TIPOFILM, è un dramma nell ambito della giustizia militare. ); Per visualizzare una costante in uno script si usa echo e l operatore di concatenazione: echo Il film.film.tipofilm; L operatore. è l operatore di concatenazione. 21

22 Operatori (I) Operatori aritmetici +: : addizione ($a + $b). -:: sottrazione ($a - $b). : : moltiplicazione ($a $b). /:: divisione ($a / $b). %:: modulo ($a % $b). Operatori di confronto ==: : uguale ($a == $b). ===: : identico ($a === $b) (cioè $a e $b sono anche dello stesso tipo).!=: : diverso ($a!= $b). <>: : diverso ($a <> $b). <: : minore di ($a < $b). <=: : minore o uguale di ($a <= $b). 22

23 Operatori (II) Operatori logici!:: NON (!$b: rende vero se $b è falso e viceversa). &&: : E ($a && $b: rende vero se $a e $b sono entrambe vere; altrimenti falso). : : O ($a $b: rende vero se $a oppure $b è vera; altrimenti falso). xor: : O esclusivo ($a xor $b: rende vero se i valori di verità di $a e $b sono diversi; altrimenti falso). Operatore ternario condition? value if true : value if false ($grade > 50? Passed : Failed ); L espressione assumerà valore Passed o Failed a seconda del valore della variabile $grade. Operatore di assegnazione: = 23

24 Operatori (III) Operatori combinati +=: : $a += 5: aggiungi 5 ad $a e assegna il risultato ad $a stessa. -=: : $a -= 5: togli 5 ad $a e assegna il risultato ad $a stessa. /=:$a /= 5: dividi $a per 5 e assegna il risultato ad $a stessa. Operatore di incremento e decremento ++$a: : aggiunge 1 alla variabile $a poi ne restituisce il valore. $a++: : restituisce il valore originario quindi vi aggiunge 1. Analogamente per gli operatori --$a e $a--. Questi operatori vengono spesso utilizzati per i contatori all interno di cicli ($contatore += 10, $contatore++). 24

25 Esempi <?php $costo_televisore= 500 ; $costo_televisore+= 15 ; echo Ehi! Grande occasione per le TV, costano solo $costo_televisore, spedizione inclusa! Ordina subito! ;?> Risultato nel browser: Ehi! Grande occasione per le TV, costano solo 515, spedizione inclusa! Ordina subito! $contatore=0; echo $contatore++; echo <br> ; echo $contatore; $contatore=10 echo --$contatore; echo <br> ; echo $contatore Risultato nel browser: 0 Risultato nel browser:

26 Variabili e tipi di dato: variabili predefinite Sono variabili il cui valore è preimpostato, che contengono solitamente informazioni sull ambiente di esecuzione dello script PHP. $_SERVER[ PHP_SELF ]: : contiene il percorso dello script in esecuzione (ad es., se lo script è raggiungibile dall indirizzo $_SERVER[ PHP_SELF ] conterrà il valore /index.php3). $_SERVER[ HTTP_HOST ]: : contiene il nome del server su cui lo script viene eseguito (nel caso precedente, localhost). $_SERVER[ HTTP_REMOTE_HOST ]: : fornisce il nome di dominio del visitatore. $_SERVER[ HTTP_REMOTE_ADDR ]: : fornisce l indirizzo IP del visitatore. Usare la funzione phpinfo( ) per visualizzare l elenco completo delle variabili predefinite. 26

27 Variabili e tipi di dato: tipi di dato I tipi di dato in PHP si suddividono in tipi scalari e tipi compositi. Tipi scalari: numeri (interi e in virgola mobile), stringhe, valori booleani. Tipi compositi: array, oggetti. 27

28 Variabili e tipi di dato: esempi // $b è una variabile di tipo booleano $b = TRUE; // $num è una variabile di tipo intero $num = 25; // $pi_greco è un numero in virgola mobile // si noti il punto (virgola decimale) $pi_greco = 3.14; //$messaggio è una stringa $messaggio = Ciao a tutti! ; 28

29 Variabili e tipi di dato: array In PHP un array può essere tanto un vettore (struttura dati in cui ogni elemento è individuato da un valore numerico) quanto una tabella di hash (collezione di coppie nome/valore). array( ):) : per costruire esplicitamente un array. È anche possibile costruire un array in modo implicito. 29

30 Variabili e tipi di dato: esempi di array // array di numeri interi costruito esplicitamente utilizzando array() $primi = array(2,3,5,7,11); // array costruito implicitamente $pari[0] = 2; $pari[1] = 4; $pari[2] = 6; // tabella di hash $bookmark[ univ ] = ; $bookmark[ dip ] = ; 30

31 Variabili e tipi di dato: come accedere agli elementi di un array Utilizzare il corrispondente indice numerico, oppure la chiave (se si tratta di una tabella di hash) echo $primi[3]; echo $bookmark[ dip ]; In PHP un array può contenere anche elementi di tipo diverso $mix = array(1, ciao,3.14,array(1,2,3)); 31

32 Manipolazione delle stringhe In PHP esistono diverse funzioni predefinite per effettuare moltissime operazioni sulle stringhe di testo. substr: consente di estrarre una sottostringa. La sintassi è: substr(stringa,inizio,fine); ove stringa indica la stringa di partenza, inizio è il carattere di partenza per estrarre la sottostringa e fine quello in cui termina la sottostringa. L argomento fine è opzionale: se non indicato, il carattere finale della sottostringa sarà il carattere finale della stringa stessa. <?php $protagonista= Bruce Willis ; $nome=substr($protagonista,0,5); $cognome=substr($protagonista,6); echo Il nome è: $nome, il cognome è: $cognome ;?> 32

33 Manipolazione delle stringhe strlen(stringa): restituisce la lunghezza della stringa stringa come numero intero. trim(stringa): elimina gli spazi dalla stringa stringa. ucfirst(stringa): rende maiuscola l iniziale di stringa. ucwords(stringa): rende maiuscole tutte le iniziali delle parole di stringa. 33

34 Manipolazione delle stringhe strpos(stringa,pattern): cerca la prima occorrenza di pattern in stringa e restituisce il carattere in cui compare. strrpos(stringa,pattern): cerca l ultima occorrenza di pattern in stringa e restituisce il carattere in cui compare. str_replace(stringa da cercare,stringa da inserire,stringa): cerca stringa da cercare in stringa e la sostituisce con stringa da inserire. nl2br(stringa): se stringa è un generico testo, converte tutti gli a capo in <BR> HTML. urlencode(stringa): converte stringa in modo tale da poterla accodare a un interrogazione in uno script. urldecode(stringa): decodifica completamente la stringa di interrogazine URL stringa. 34

35 Manipolazione delle stringhe strrev(stringa): restituisce stringa invertita. str_word_count(stringa,modalità): effettua alcuni conteggi su stringa: se modalità non è specificata, conta le parole di stringa; ; se modalità=1, restituisce un array contenente tutte le parole di stringa; se modalità=2, restituisce una tabella hash ove la chiave è la posizione numerica della parola in stringa e il valore è la parola stessa. explode(separatore,stringa): crea un array di elementi partendo dalle parti di stringa divise dal carattere separatore. implode(separatore,array): crea una stringa partendo dagli elementi di array divisi da separatore. Esistono numerose altre funzioni per la manipolazione di stringhe, che possono essere trovate su ogni buon manuale. 35

36 Form HTML: sintassi dei form Un form HTML è una finestra contenente vari elementi di controllo che consentono al visitatore di inserire informazioni. Una volta inseriti, i dati vengono inviati ad uno script che li elabora. Sintassi: <form action= [URL dello script] method= [GET o POST] > <input type= [elemento di controllo] name= [nome] = [nome] > <input type= [elemento di controllo] name= [nome] = [nome] > </form> 36

37 Form HTML: sintassi dei form L attributo action serve per specificare l URL dello script. L attributo method serve per specificare la modalità di invio delle informazioni. Può essere GET o POST.. Con GET le informazioni vengono inserite nell indirizzo URL, dunque sono visibili nella barra degli indirizzi del browser, ma sono vincolate dalla lunghezza massima di un URL, che è di 256 caratteri. Con POST i dati vengono scritti sullo standard input dell applicazione destinataria, dunque non sono visibili ma soprattutto non ci sono limiti sulla quantità di dati inviata. Si può accedere alle informazioni inviate anche utilizzando gli array superglobali $_GET e $_POST (a seconda del metodo usato). 37

38 Form HTML: elementi di controllo (I) Pulsante d invio: SUBMIT.. L attributo Value (opzionale) specifica il testo personalizzato da visualizzare all interno del pulsante. Pulsante per la cancellazione delle informazioni inserite: RESET.. L attributo Value è come sopra. Campi di testo per l immissione di singole linee di testo all interno di appositi riquadri: TEXT.. L attributo Name serve per dare il nome al controllo; Size serve per determinare la dimensione del campo in caratteri (es.: size= 30 ). Altri controlli per l immissione di testo sono PASSWORD (i caratteri sono rimpiazzati sullo schermo da asterischi) e HIDDEN (per la creazione di un campo di testo nascosto, a volte utilizzato per passare informazioni da un form a un altro). Per l immissione di testo su più righe, si può utilizzare TEXTAREA: <TEXTAREA NAME= miei commenti ROWS= 10 COLS= 40 > 38 </TEXTAREA>

39 Form HTML: elementi di controllo (II) Caselle di selezione che consentano all utente selezioni multiple all interno di un form: CHECKBOX.. L attributo Name serve per dare un nome al singolo elemento di selezione all interno del controllo, mentre l attributo Value specifica il valore assunto dalla variabile relativa quando la casella viene selezionata. Inserendo alla fine la parola CHECKED,, il browser selezionerà inizialmente la casella in modo automatico. Esempio: <INPUT TYPE= CHECKBOX NAME= arancia VALUE= Succo d arancia > <INPUT TYPE= CHECKBOX NAME= cola VALUE= Coca-Cola > <INPUT TYPE= CHECKBOX NAME= pompelmo VALUE= Succo di pompelmo CHECKED>. 39

40 Form HTML: elementi di controllo (III) Pulsanti radio per la selezione di un solo elemento all interno di un gruppo: RADIO. A differenza del controllo CHECKBOX, il nome di tutte le caselle di un controllo RADIO deve essere sempre lo stesso. I menu di selezione permettono una o più selezioni a partire da un elenco: SELECT. Esempio: <SELECT NAME= giorno_settimana > <OPTION>Lunedì <OPTION>Martedì <OPTION>Mercoledì <OPTION>Giovedì <OPTION>Venerdì </SELECT> Per avere selezioni multiple all interno di un menu di selezione, si usa la seguente sintassi: <SELECT NAME= giorno_settimana[] [] multiple> 40

41 Form HTML: esempio Semplice esempio di form HTML: <form action= /scripts/elabora.php method= get > <input type= text name= campione > <input type= submit name= Invia value= Invia i dati > </form> Scrivendo Schumacher nella casella di testo e premendo il pulsante Invia i dati, nella barra degli indirizzi verrà visualizzato: Nello script elabora.php viene definita una variabile di nome $_GET[ campione ] il cui valore è la stringa Schumacher. 41

42 Form HTML: trasmissione dei dati col metodo GET Indirizzo URL dello script a cui si vogliono inviare i dati seguito da un punto interrogativo? seguito dalla query string La struttura della query string consiste di coppie nome/valore separate da &; i caratteri non ammissibili in un indirizzo URL vengono sostituiti da % seguito dal corrispondente codice ASCII (in formato esadecimale; ad es., ì diventa %EC ). Gli spazi vengono sostituiti da +. Il metodo GET si può sfruttare per passare parametri ad uno script PHP. Supponiamo di avere uno script news.php che estrae informazioni da un database; possiamo creare una variabile, da chiamare, ad esempio, $argomento, tramite la quale estrarre il tipo di notizie che più ci interessano: Se l argomento che ci interessa ha un nome che non sappiamo accodare ad un URL, possiamo usare la funzione urlencode( ).) 42

43 Un esempio Creiamo un form contenente un campo di testo, una textarea e due pulsanti, un pulsante di invio e un pulsante di reset. Supponiamo inoltre che lo script di destinazione si chiami decode.php. 43

44 Un altro esempio Creiamo un altro form, contenente un campo di testo, un menu di selezione, tre pulsanti radio e i soliti due pulsanti, di invio e di reset. Supponiamo inoltre che, anche in questo caso, lo script di destinazione si chiami decode.php. 44

45 Un altro esempio Ora costruiamo lo script decode.php che elabora il precedente form, dando come risultato per l utente la seguente pagina web: 45

46 Dichiarazione di funzioni: sintassi Ogni programmatore può creare funzioni personali, che normalmente sono di due tipi: funzioni in senso matematico o funzioni come mezzo per aggiungere nuovi comandi al linguaggio. Nella prima accezione, una funzione rappresenta una relazione tra un input e un output. Nella seconda accezione, una funzione rappresenta un modo per raggruppare un blocco di istruzioni PHP affinché possano essere richiamate ed eseguite come se fossero un unica istruzione. Sintassi per la dichiarazione di una funzione: function [nome_funzione]([argomenti] [argomenti]){ [corpo-della-funzione] } [nome_funzione]: nome della funzione; [argomenti]: elenco, eventualmente vuoto, di parametri da fornire alla funzione separati da virgole; [corpo-della-funzione]: blocco di istruzioni PHP che implementano la funzione stessa. 46

47 Dichiarazione di funzioni: esempio Dichiarazione di una funzione che somma due numeri: function somma($a,$b){ return $a+$b; } Il costrutto return return viene utilizzato quando una funzione deve restituire un valore. Richiamo della funzione somma : $risultato=somma(1,1); Il risultato della funzione somma calcolata sugli argomenti (1,1) viene assegnato alla variabile $risultato. 47

48 Dichiarazione di funzioni: variabili locali e variabili globali All interno di una funzione, come si è visto, si possono naturalmente utilizzare delle variabili. In questo caso, tuttavia, occorre prestare attenzione alla distinzione tra variabili locali e variabili globali. Le variabili locali sono definite all interno della funzione, e non sono accessibili al di fuori di essa. Le variabili globali sono invece definite al suo esterno (nella parte principale dello script), e si possono utilizzare all interno di una funzione premettendo la parola-chiave global. 48

49 Dichiarazione di funzioni: esempi Esempio 1: Esempio 2: <? function prova() { $numero =3; } // Qui $numero non è definita!?> <? // $numero è una variabile globale $numero=3; function prova() { // Quando dico $numero intendo la variabile globale global $numero; echo $numero; }?> 49

50 Dichiarazione di funzioni: il costrutto global Se ci si dimentica di usare il costrutto global, l interprete PHP avrebbe considerato $numero una variabile locale, e l avrebbe trovata non definita. In alternativa a global si può accedere a una variabile globale tramite l array associativo $GLOBALS.. La sintassi è la seguente: $GLOBALS[ numero ] 50

51 Strutture di controllo Come in ogni linguaggio di programmazione, le strutture di controllo servono per controllare il flusso di esecuzione del programma (o, nel nostro caso, dello script). Si possono distinguere due tipologie di strutture di controllo: quelle condizionali e quelle iterative. 51

52 Strutture di controllo: strutture condizionali Costrutto if: : si utilizza quando si vuole che l esecuzione di un certo blocco di istruzioni avvenga o meno in funzione del valore di un espressione (la condizione). Costrutto switch: : si utilizza quando ci sono diversi blocchi di istruzioni e si vuole che, in base al valore dell espressione data, venga eseguito soltanto uno di questi. 52

53 Strutture di controllo: costrutto if Sintassi: if [condizione] { [blocco istruzioni] } Esempio: if ($b!= 0) { $c = $a / $b; } Se si vuole che un altro blocco di istruzioni venga eseguito nel caso in cui la condizione risulti falsa, si usa il costrutto else.. Sintassi: if [condizione] { [blocco istruzioni 1] } else { [blocco istruzioni 2] } Esempio: if ($colore == rosso ) { echo Il colore è rosso ; } else{ echo Il colore NON è rosso ; 53

54 Strutture di controllo: costrutto switch Sintassi: switch [espressione] { case [valore 1]: [blocco istruzioni 1]; break; case [valore 2]: [blocco istruzioni 2]; break; } Esempio: switch($segno){ case 1: echo E uscito il segno 1! ; break; case 2: echo E uscito il segno 2! ; break; default: echo E uscito il segno X! ; } Tramite la parola chiave default si può prevedere un caso che deve essere eseguito se tutti i 54

55 Strutture di controllo: strutture iterative Costrutto while: : si utilizza quando si vuole ripetere l esecuzione di un blocco di istruzioni, e il numero di iterazioni dipende dal valore di una condizione. Dunque while è particolarmente utile quando non si sa a priori quante iterazioni dovranno essere effettuate. Sintassi: while([condizione] [condizione]) [blocco istruzioni] Esempio: $contatore=1; $max=10; while($contatore <= $max){ echo Ho contato fino a $contatore <br> ; $contatore++; } 55

56 Strutture di controllo: strutture iterative Costrutto for: : si utilizza quando si vuole ripetere l esecuzione di un blocco di istruzioni, e il numero di iterazioni è prefissato. Sintassi: for([espr1 [espr1]; [espr2]; [espr3]) ) { [blocco istruzioni] } [espr1]: : inizializzazione, espressione da valutare una sola volta; [espr2]: : condizione da valutare; [espr3]: : se espr2 è verificata, si esegue [blocco istruzioni] ed [espr3], per poi tornare alla valutazione di [espr2]. Esempio: $max=10; for ($contatore=1; $contatore<=$max; $contatore++) { echo Ho contato fino a $contatore <br> ; $contatore++; } 56

57 Un esempio Riprendiamo l esempio che abbiamo chiamato form2. Per prima cosa, facciamo una piccola modifica al form html, introducendo la possibilità di scegliere più giorni della settimana per la consegna (e non uno soltanto). Inoltre chiameremo collect_info.php lo script che elaborerà i dati inviati. Chiameremo il nuovo form form_menu.html. 57

58 Un esempio Ora creiamo lo script collect_info.php per elaborare i dati inviati col precedente form. Vogliamo che tale script svolga i seguenti compiti: Se non è stato selezionato alcun giorno di consegna, l array $_GET[ giorno_settimana ] sarà vuoto e il browser visualizzerà un messaggio di errore. A tale scopo, si può utilizzare la funzione isset(). In caso contrario, il browser mostrerà un messaggio di conferma, come nella figura sottostante. Per estrarre tutti gli elementi dell array $_GET[ giorno_settimana ], si userà il costrutto foreach. 58

59 Un esempio Funzione isset(): : controlla se una variabile è stata definita (ma non se contiene qualche dato). Costrutto foreach: : foreach($array as $variabile) { } prende ciascun elemento dell array $array e lo inserisce nella variabile $variabile, mentre qualunque cosa nelle parentesi graffe è eseguita sull elemento $variabile. 59

60 Un esempio Finora abbiamo sempre supposto che l utente avrebbe inserito le informazioni richieste negli appositi campi. Di fatto, spesso l utente dimentica di inserire qualche dato. Creiamo allora uno script per la convalida del nostro form. Più specificamente, vogliamo progettare uno script che controlli che l utente abbia inserito il proprio nome e abbia selezionato i giorni per la consegna. Tale script verrà chiamato check_form.php : questo nome dovrà essere sostituito a collect_info.php nel form form_menu.html. Suggerimenti per lo script: Una stringa vuota si indica con. Utilizzare una variabile booleana $errore per gestire le situazioni di errore. Utilizzare la funzione isset(),, che ha come unico argomento una variabile e controlla se tale variabile è stata definita. 60

61 Un esempio Questo è ciò che vogliamo ottenere se, ad esempio, l utente ha regolarmente inserito il nome ma non ha selezionato alcun giorno per la consegna. 61

62 Inclusione di file esterni A volte c è la necessità di includere (ed eseguire) in uno script PHP dei file esterni, che possono essere tanto semplici frammenti di codice HTML quanto altri scripts PHP. I costrutti che si usano in questi casi sono require e include. 62

63 Inclusione di file esterni: costrutti require e include Per entrambi questi costrutti la sintassi è la seguente: require [file] [file] include [file] [file] Ad esempio, per inserire in un certo punto del proprio script un altro script denominato libreria.php3, si scriverà require libreria.php3 oppure include libreria.php3. Si noti che la sintassi non prevede l utilizzo di parentesi tonde (non sono funzioni di PHP, ma più propriamente costrutti del linguaggio). IMPORTANTE: con require e include, l interprete PHP analizza il file incluso ponendosi in modalità HTML. Pertanto, eventuali frammenti di codice PHP, per essere correttamente riconosciuti ed eseguiti, vanno specificati utilizzando le consuete marcature per l inserimento del codice PHP. Una volta terminata l analisi del file esterno, l interprete torna regolarmente in modalità PHP. Noi useremo i due costrutti require e include indifferentemente. Per conoscere le differenze sui due costrutti, si può consultare un buon manuale di PHP. 63

64 Inclusione di file esterni: esempio Supponiamo di voler realizzare un sito in cui in tutte le pagine compare una barra di navigazione coi link alle varie sezioni del sito. È improbabile pensare di inserire manualmente in ogni pagina un appropriato frammento HTML, se non altro per evidenti problemi di manutenzione. Usiamo allora PHP, procedendo come segue. 64

65 Inclusione di file esterni: esempio 1. Isoliamo il frammento di HTML corrispondente alla barra di navigazione, e salviamolo in un file, denominato, ad esempio, intestazione.html. <!-- file intestazione.html === INIZIO --> <body color= black bgcolor= white > <a href= index.php3 >Home page</a> <a href= pagina2.php3 >Pagina 2</a> <hr size= 1 > <!-- file intestazione.html === FINE --> 65

66 Inclusione di file esterni: esempio 1. Realizziamo ora le varie pagine del sito. Una volta completata ciascuna pagina, includeremo il file contenente la barra di navigazione. <!-- file index.php3 --> <html> <head> <title>pagina che include un file esterno</title> </head> <? require intestazione.html?> <h1>pagina che include un file esterno</h1> [ contenuto della pagina ] </body> </html> Si noti che nella pagina index.php3 è stato omesso il tag <body>, in quanto già presente nel file intestazione.html. 66

67 Una barra di navigazione intelligente Riprendiamo il precedente esempio della barra di navigazione per svilupparlo ulteriormente. Ciò che vogliamo fare ora è costruire una barra di navigazione in grado di evidenziare automaticamente la voce corrispondente alla pagina corrente. Genereremo la nostra barra di navigazione utilizzando uno script apposito, denominato barra.php ; tale script verrà richiamato in tutte le pagine in cui vorremo visualizzare la barra. 67

68 Una barra di navigazione intelligente Il primo passo consiste nel costruire una struttura dati appropriata, nel nostro caso un array associativo, che chiameremo $links, contenente come elementi i link che vogliamo inserire nella barra di navigazione. Più specificamente, $links sarà una tabella hash, in cui la chiave di un elemento sarà l indirizzo della pagina web corrispondente, e il valore una sua breve descrizione. $links = array( index.php => Home page, pagina2.php => Pagina 2, pagina3.php => Pagina 3 ); 68

69 Una barra di navigazione intelligente Per far sì che venga evidenziata la voce corrispondente alla pagina corrente, ci sono sostanzialmente due modi: stabilire di volta in volta quale voce evidenziare, oppure fare in modo che ciò avvenga in modo automatico. Quest ultimo approccio sarà quello che useremo noi. Confronteremo il nome del file della pagina corrente con quelli contenuti in $links. Per fare ciò, useremo la variabile $_SERVER[ PHP_SELF ], che contiene il percorso dello script PHP corrente. Poiché a noi interessa solo il nome del file e non l intero percorso, utilizziamo la funzione basename() per estrarlo. 69

70 Una barra di navigazione intelligente Qui sotto viene specificato il codice PHP per visualizzare una tale barra di navigazione; come si vede, racchiuderemo ogni link della barra di navigazione tra parentesi quadre, ad eccezione di quello della pagina corrente, visualizzato in grassetto e senza collegamento ipertestuale. <?php // Nome del file dello script corrente $pagina_corrente = basename($_server[ PHP_SELF ]); // Riga orizzontale prima dei links echo <hr>\n ; // Iniziamo a scorrere l array foreach ($links as $url=>$desc) { if ($url == $pagina_corrente) { echo <b>$desc</b> ; } else { echo [<a href=\ $url\ >$desc</a>] ; } } // Riga orizzontale dopo i links echo <hr>\n ;?> 70

71 Una barra di navigazione intelligente Ora vediamo come inserire la nostra barra di navigazione nelle pagine del sito. <!-- file index.php --> <html> <head> <title>barra di navigazione intelligente</title> </head> <body> <? require barra.php3?> <h1>barra di navigazione intelligente</h1> <h2>prima pagina</h2> <p>questa è la home page; in alto dovrebbe essere visibile la barra di navigazione </body> </html> 71

72 I cookies I cookies sono un meccanismo tramite il quale delle applicazioni lato server possono memorizzare e recuperare informazioni sul client. In tal modo, ad ogni visitatore viene associato uno stato. In PHP, tutte le operazioni di scrittura, modifica o cancellazione relative ai cookies sono gestite dalla funzione setcookie(). La funzione setcookie() va necessariamente invocata prima di inviare alcunché al browser, in quanto i cookies vengono trasmessi sotto forma di headers HTTP. 72

73 I cookies: sintassi La funzione setcookie() ha due argomenti principali, entrambi obbligatori: il nome da assegnare al cookie e il suo valore. Es.: per memorizzare nel browser di un utente un cookie di nome $nomeutente e avente come contenuto la stringa miosito, l istruzione da utilizzare sarebbe: setcookie( nomeutente, miosito ); Ci sono poi altri argomenti opzionali per setcookie(), quali la scadenza del cookie, il percorso e altri ancora. Per modificare un cookie occorre richiamare la funzione setcookie() e modificarne il valore. Per cancellare un cookie si può assegnare ad esso un valore nullo oppure impostarne la scadenza ad una data passata. I cookies e il loro contenuto sono disponibili nell array superglobale $_COOKIE. 73

74 I cookies: esempio Realizziamo una pagina PHP che ci dice la data e l ora dell ultimo accesso del visitatore corrente al nostro sito. Per fare ciò, definiamo un cookie, denominato ultimavisita. In generale, se vogliamo che rimanga memoria delle informazioni contenute nel cookie, dobbiamo impostare una scadenza al cookie stesso. Nel nostro caso, non impostando alcuna scadenza, il cookie scompare alla chiusura del browser. Al nostro cookie ultimavisita assegneremo il valore ottenuto invocando la funzione time(),, che consiste nel numero di secondi trascorsi dalla cosiddetta Unix epoch (che è il 1 gennaio 1970). 74

75 I cookies: esempio <?php // saluto predefinito $saluto = Benvenuto ; //innanzitutto vediamo se esiste il cookie if (isset($_cookie[ ultimavisita ])) { $saluto = Bentornato! ; } setcookie( ultimavisita, time());?> <html> <head> <title><? echo $saluto?></title> </head> <body> <h1><? echo $saluto?></h1> <?php if (isset($_cookie[ ultimavisita ])) { echo L ultima volta sei stato qui il. date( d/m/y ); echo alle ore. date( H:i:s, $_COOKIE[ ultimavisita ]); //link per cancellare il cookie echo <p><a href=\ cancella.php\ >Cancella il cookie</a> ; } else { echo Non sei mai stato qui prima? ; }?> </body> </html> 75

76 Le date in PHP In PHP le date si rappresentano sotto forma di timestamp,, vale a dire numeri interi corrispondenti al numero di secondi trascorsi dalla Unix epoch. Es.: le ore 0:00:00 del 1 gennaio 2001 corrispondono al timestamp Per passare dalla data al timestamp corrispondente si usa la funzione mktime().. I parametri vanno passati in quest ordine: ore minuti secondi mese giorno anno. Es.: per determinare e visualizzare il precedente timestamp l istruzione è: echo mktime(0,0,0,1,1,2001); Per passare dal timestamp alla data corrispondente si usa la funzione date().. Essa prevede due argomenti: il primo, obbligatorio, è una stringa che determina come formattare la data; il secondo, opzionale, è il timestamp da formattare. Se manca il secondo argomento, date() considererà automaticamente il timestamp corrente. Alcuni esempi di stringhe per i formati di data: Formato gg/mm/aaaa: date( d/m/y ); Come sopra, ma senza zero davanti a giorni e mesi di una sola cifra: date( j/n/y ); Se vogliamo visualizzare i giorni trascorsi dall inizio dell anno: echo date( z ); 76

77 Le date in PHP: funzione checkdate() Se vogliamo validare una data (cioè controllare che quella data effettivamente esista) possiamo usare la funzione checkdate(). Esempio: //verifichiamo la data 31 aprile 2001 $giorno=31; $mese=4; $anno=2001; echo La data $giorno/$mese/$anno ; if (checkdate($mese,$giorno,$anno)) { echo è corretta. ; } else { echo non è valida! ; } 77

78 Le date in PHP: ancora sui timestamp A volte è utile conoscere il timestamp relativo a certe date, ad esempio per poter confrontare due date o effettuare calcoli aritmetici coinvolgenti due o più date. I due esempi seguenti dovrebbero rendere più chiara la precedente affermazione. Esempio 1: Esempio 2: //confronto fra due date $data1=mktime(0,0,0,1,1,2001); $data2=mktime(0,0,0,7,29,2001); echo La prima data è ; if ($data1 < $data2) { echo precedente ; } else { echo successiva ; } echo alla seconda ; //numero di giorni tra due date arbitrarie $data1=mktime(0,0,0,1,1,2001); $data2=mktime(0,0,0,7,29,2001); echo Tra le due date ci sono ; echo ($data2 - $data1)/60*60*24; echo giorni ; 78

79 Un esempio In questo esempio vogliamo creare un cookie che saluti un visitatore frequente di una pagina web. Tipicamente, il contenuto di tale cookie sarà un saluto personalizzato relativo all utente connesso. Il primo passo consisterà nella creazione della pagina principale, denominata main_page.php, in cui viene mostrato il contenuto del cookie se questo già esiste (insieme alla possibilità di cambiare il contenuto), altrimenti viene proposto un link per la sua creazione (e dunque per la personalizzazione della pagina). Il secondo passo consisterà invece nella creazione dello script add_user.php, tramite il quale l utente può effettivamente inserire i propri dati per personalizzare la pagina. Il terzo e ultimo passo consisterà infine nella scrittura dello script set_cookie.php, tramite il quale i dati inseriti dall utente verranno gestiti. 79

80 Un esempio Risultato di main_page.php. 80

81 Un esempio Risultato di add_user.php. 81

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

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

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

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

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

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

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

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

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

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

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

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 (PHP Hypertext Preprocessor)

PHP (PHP Hypertext Preprocessor) Programmazione lato server PHP (PHP Hypertext Preprocessor) Building applications While many sites act as simple repositories, providing users with a collection of files they can retrieve and navigate

Dettagli

Appunti su ASP (Active Server Pages)

Appunti su ASP (Active Server Pages) Client Client Appunti su ASP (Active Server Pages) Che cosa è ASP Un server web è un computer che contiene tutte le pagine web di un determinato sito web. In tale computer è installato un software che

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

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

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

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

Richiesta pagina PHP (es: index.php)

Richiesta pagina PHP (es: index.php) PHP PHP = personal home page SERVER Richiesta pagina PHP (es: index.php) Server Web (Apache) in ascolto sulla porta 80, si accorge che la pagina richiesta è una pagina PHP in base all'estensione o con

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

PHP 1. Scripting lato server. Come funziona uno script. Che cosa è PHP 1. Esempio. Elementi del linguaggio. Più pseudo-tag nello stesso documento

PHP 1. Scripting lato server. Come funziona uno script. Che cosa è PHP 1. Esempio. Elementi del linguaggio. Più pseudo-tag nello stesso documento Scripting lato server Elementi del linguaggio PHP 1 L'URL che il browser richiede identifica una risorsa presente in un server http costituita da Codice HTML Pezzi di codice scritti in un linguaggio di

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

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

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

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

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

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

Introduzione allo sviluppo Web. Studium Generale, a.a. 2013-2014, II semestre

Introduzione allo sviluppo Web. Studium Generale, a.a. 2013-2014, II semestre Introduzione allo sviluppo Web Studium Generale, a.a. 2013-2014, II semestre 1 Contatto Daniel Graziotin daniel.graziotin@unibz.it http://ineed.coffee/teaching/ introduzione-allo-sviluppo-web 2 Esame Esame

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

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

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

&RUVRGL3+3 3XQWR,QIRUPDWL R /DWR6HUYHULW /X D%DO]HUDQL 6YLOXSSRH3URJUDPPD]LRQH6HUYHU6LGH ZZZODWRVHUYHULW /HYROX]LRQHGHOOD5HWH ZZZSXQWRLQIRUPDWL RLW

&RUVRGL3+3 3XQWR,QIRUPDWL R /DWR6HUYHULW /X D%DO]HUDQL 6YLOXSSRH3URJUDPPD]LRQH6HUYHU6LGH ZZZODWRVHUYHULW /HYROX]LRQHGHOOD5HWH ZZZSXQWRLQIRUPDWL RLW /DWR6HUYHULW 6YLOXSSRH3URJUDPPD]LRQH6HUYHU6LGH ZZZODWRVHUYHULW 3XQWR,QIRUPDWL R ZZZSXQWRLQIRUPDWL RLW SUHVHQWDQR GL 5HDOL]]DWRGD /KRPHSDJHGHO RUVRqKWWSZZZODWRVHUYHULWSKS RUVR /DXWRUHSXzHVVHUH RQWDWWDWRDOOLQGLUL]]RGLSRVWDHOHWWURQL

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

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 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

4 Pubblicare i dati MySQL

4 Pubblicare i dati MySQL 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

Dettagli

Costruzione di Siti Web con PHP e MySQL. Lezione 5: Cicli, Funzioni, Operazioni con Stringhe e Date

Costruzione di Siti Web con PHP e MySQL. Lezione 5: Cicli, Funzioni, Operazioni con Stringhe e Date Costruzione di Siti Web con PHP e MySQL Lezione 5: Cicli, Funzioni, Operazioni con Stringhe e Date Argomenti della lezione In questa lezione si riprenderanno le strutture di controllo, verrà introdotto

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

La programmazione web: lato client e lato server

La programmazione web: lato client e lato server La programmazione web: lato client e lato server Parlando di PHP e di altri linguaggi di scripting può capitare di sentir citare le espressioni "lato client" e "lato server": per chi non è esperto della

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

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

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

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

Corso di Web Programming

Corso di Web Programming Corso di Web Programming 8. PHP Parte I Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea in Informatica Applicata A.A. 2010/2011

Dettagli

Laboratorio di reti II: PHP

Laboratorio di reti II: PHP Laboratorio di reti II: PHP Stefano Brocchi brocchi@dsi.unifi.it 2 marzo, 2009 Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, 2009 1 / 55 Il PHP Il PHP è un linguaggio di scripting che si può inserire

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

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

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

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

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

Web e Server-side Computing: Richiami sulla tecnologia Web e FORM HTML

Web e Server-side Computing: Richiami sulla tecnologia Web e FORM HTML Web e Server-side Computing: Richiami sulla tecnologia Web e FORM HTML Gianluca Moro gianluca.moro@unibo.it Dipartimento di Elettronica, Informatica e Sistemistica G. Moro - Università di Bologna World

Dettagli

Uso di un browser (con riferimento a Microsoft Internet Explorer 7.0)

Uso di un browser (con riferimento a Microsoft Internet Explorer 7.0) Uso di un browser (con riferimento a Microsoft Internet Explorer 7.0) Nota Bene: Si raccomanda di leggere queste dispense di fronte al computer, provando passo dopo passo le funzionalità descritte. Per

Dettagli

Richiami sugli elementi del linguaggio HTML

Richiami sugli elementi del linguaggio HTML Richiami sugli elementi del linguaggio HTML Un documento in formato Web può essere aperto con un browser, attraverso un collegamento a Internet oppure caricandolo dal disco del proprio computer senza connettersi

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

www.mtcube.com Manuale di ASP

www.mtcube.com Manuale di ASP Manuale di ASP Sommario degli argomenti Che cosa sono le Active Server Pages... 3 Struttura, creazione ed esecuzione della pagina Asp... 3 Variabili e tipi di dati... 4 Numero Intero... 4 Numeri in virgola

Dettagli

ASP: DOMANDE E RISPOSTE (Q&A)

ASP: DOMANDE E RISPOSTE (Q&A) Autore: Classe: Nicola Ceccon QUINTA INFORMATICA (5IA) Anno scolastico: 2003/2004 Scuola: Itis Euganeo ASP: DOMANDE E RISPOSTE (Q&A) Dispensa La dispensa presenta i contenuti fondamentali di ASP nella

Dettagli

Basi di dati. Microsoft Access. Cosa è. Pietro Pala (pala@dsi.unifi.it) Come iniziare. Aprire un database. Creare un database. Creare un database

Basi di dati. Microsoft Access. Cosa è. Pietro Pala (pala@dsi.unifi.it) Come iniziare. Aprire un database. Creare un database. Creare un database Cosa è Basi di dati Pietro Pala (pala@dsi.unifi.it) Microsoft Access Access è un DBMS relazionale in grado di supportare: Specifica grafica dello schema della base dati Specifica grafica delle interrogazioni

Dettagli

World Wide Web. Web e Server-side Computing: Richiami sulla tecnologia Web e FORM HTML. Il Successo del Web. Protocolli di accesso

World Wide Web. Web e Server-side Computing: Richiami sulla tecnologia Web e FORM HTML. Il Successo del Web. Protocolli di accesso Web e Server-side Computing: Richiami sulla tecnologia Web e FORM HTML Gianluca Moro gmoro@deis.unibo.it Dipartimento di Elettronica, Informatica e Sistemistica Università di Bologna World Wide Web nato

Dettagli

A. A. 2014-2015. PHP: Hypertext Preprocessor

A. A. 2014-2015. PHP: Hypertext Preprocessor Corso di Laurea Magistrale in Ingegneria Gestionale Corso di Sistemi Informativi: II Modulo A. A. 2014-2015 PHP: Hypertext Preprocessor 1 Contenuti Introduzione: caratteristiche del linguaggio ed installazione

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

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

Linguaggio HTML. Reti. Il Linguaggio HTML. Il Linguaggio HTML

Linguaggio HTML. Reti. Il Linguaggio HTML. Il Linguaggio HTML Reti Linguaggio HTML 1 HTML = Hypertext Markup Language E il linguaggio usato per descrivere documenti ipertestuali Ipertesto = Testo + elementi di collegamento ad altri testi (link) Linguaggio di markup:

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

Dettagli

Uso di un browser (con riferimento a Microsoft Internet Explorer 6.0)

Uso di un browser (con riferimento a Microsoft Internet Explorer 6.0) Uso di un browser (con riferimento a Microsoft Internet Explorer 6.0) Nota Bene: Si raccomanda di leggere queste dispense di fronte al computer, provando passo dopo passo le funzionalità descritte. Per

Dettagli

Alla base del web: il protocollo HTTP

Alla base del web: il protocollo HTTP Alla base del web: il protocollo HTTP Programmazione lato server Serie di tecniche che consentono di creare dinamicamente risorse da distribuire tramite un server Web Questo può essere ottenuto tramite

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

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

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

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

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

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

Strumenti a disposizione

Strumenti a disposizione FORM Strumenti a disposizione L'HTML visto fino ad ora permette di descrivere solo documenti statici e passivi Colori, immagini, testi, etc... L'utente può solo interagire con i link Non sempre questo

Dettagli

Database e Microsoft Access. Ing. Antonio Guadagno

Database e Microsoft Access. Ing. Antonio Guadagno Database e Microsoft Access Ing. Antonio Guadagno Database e Microsoft Access Un Database non è altro che un insieme di contenitori e di strumenti informatici che ci permette di gestire grossi quantitativi

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

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

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.a HTTP request e HTTP response (form e link)

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.a HTTP request e HTTP response (form e link) MODULO 1 PARTE 3 Programmazione (scripting) server-side con PHP 3.a HTTP request e HTTP response (form e link) Goy - a.a. 2009/2010 Programmazione Web 1 Gli oggetti HTTP request e HTTP response -I Vi ricordate?

Dettagli

Introduzione allo sviluppo Web. Studium Generale, a.a. 2013-2014, II semestre

Introduzione allo sviluppo Web. Studium Generale, a.a. 2013-2014, II semestre Introduzione allo sviluppo Web Studium Generale, a.a. 2013-2014, II semestre 1 Contatto Daniel Graziotin daniel.graziotin@unibz.it http://ineed.coffee/teaching/introdu zione-allo-sviluppo-web 2 Esame Esame

Dettagli

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo Creazione di moduli Creazione di moduli Che cos'è un modulo? Un elenco di domande accompagnato da aree in cui è possibile scrivere le risposte, selezionare opzioni. Il modulo di un sito Web viene utilizzato

Dettagli

Introduzione a PHP: Concetti Fondamentali

Introduzione a PHP: Concetti Fondamentali Introduzione a PHP: Concetti Fondamentali Davide Rocker Anastasia 20 dicembre 2005 Sommario Dopo alcuni anni di riflessione, riprende il mio percorso personale sul PHP. Questo breve documento parlerà dei

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

Dott.ssa Adriana Pietramala

Dott.ssa Adriana Pietramala Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala a.pietramala@mat.unical.it Riferimenti Sito del corso: Manuale PHP http://www.php.net/download-docs.php Editor di

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

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

GestPay Specifiche tecniche

GestPay Specifiche tecniche GestPay Specifiche tecniche Progetto: GestPay Pagina 1 di 35 Sommario Informazioni documento...3 Informazioni versione...4 1 Introduzione...5 2 Architettura del sistema...6 3 Descrizione fasi del processo...8

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

"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

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

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

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Università di Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Pagine Asp. Pagine Asp

Pagine Asp. Pagine Asp Pagine Asp Architettura web Esistono alcune limitazioni alle applicazioni che si possono realizzare in HTML, ad esempio non è possibile costruire un sito web che consenta all utente di accedere ai dati

Dettagli

Le espressioni regolari.

Le espressioni regolari. Lezione 8 Le espressioni regolari. Le espressioni regolari. Corrispondenze e classi di caratteri. Le regular expressions (espressioni regolari) servono per descrivere dei modelli di stringa. E possibile

Dettagli

1 JavaScript: generalità

1 JavaScript: generalità 1 JavaScript: generalità JavaScript (di seguito abbreviato in JS) è un linguaggio di scripting (linguaggio usato per definire degli script, dei piccoli programmi di utilità, composti anche di sole poche

Dettagli

Dato un form contenente

Dato un form contenente <input type=text name=weight size=20 /> Dato un form contenente Lo script PHP inserisce l input dell utente in una variabile speciale chiamata $_REQUEST['weight']il cui argomento è uguale al corrispondente

Dettagli

Siti interattivi e dinamici. in poche pagine

Siti interattivi e dinamici. in poche pagine Siti interattivi e dinamici in poche pagine 1 Siti Web interattivi Pagine Web codificate esclusivamente per mezzo dell HTML non permettono alcun tipo di interazione con l utente, se non quella rappresentata

Dettagli

3. Programmazione con le pagine ASP classiche

3. Programmazione con le pagine ASP classiche LIBRERIA WEB 3. Programmazione con le pagine ASP classiche 1. Le pagine ASP in generale ASP (Active Server Pages) è una tecnologia Microsoft che consente di scrivere codice eseguibile (script) lato server,

Dettagli

Basi di Dati. Programmazione e gestione di sistemi telematici

Basi di Dati. Programmazione e gestione di sistemi telematici Basi di Dati. Programmazione e gestione di sistemi telematici Coordinatore: Prof. Paolo Nesi Docenti: Prof. Paolo Nesi Dr.sa Michela Paolucci Dr. Emanuele Bellini Php: come nasce Il World Wide Web è stato

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

GUIDA BASE ALL SQL by DaD

GUIDA BASE ALL SQL by DaD GUIDA BASE ALL SQL by DaD Introduzione L'SQL, è un linguaggio per database anche se sarebbe meglio definirlo un sublinguaggio in quanto a differenza dei linguaggi veri e propri non possiede alcun comando

Dettagli

Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini

Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini Introduzione all utilizzo di Visual Basic for Application Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini PROGRAMMAZIONE Insieme delle attività da svolgersi per creare

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