La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Eprogram informatica V anno

Presentazioni simili


Presentazione sul tema: "Eprogram informatica V anno"— Transcript della presentazione:

1 Eprogram informatica V anno
1

2 Introduzione a PHP 2

3 Pagine statiche Quando digitate nella barra degli indirizzi del browser un indirizzo che finisce per .html quasi sicuramente state vedendo una pagina statica. In questo caso il Web server che chiamate si sta comportando essenzialmente come un hard disk remoto: controlla se la pagina esiste e ve la fornisce così com’è. Queste pagine sono dette statiche perché l’aspetto ed il contenuto delle pagine viene impostato alla creazione delle stesse e non è dipendente dall’interazione con l’utente. 3

4 Pagine dinamiche Per pagina dinamica si intende una pagina il cui contenuto NON è prefissato, ma viene (parzialmente o interamente) generato in tempo reale in base alle richieste dell’utente. L’esempio più chiaro e noto a tutti è quello dei motori di ricerca: ovviamente non sono presenti sul Server di Google tutte le pagine associate alle possibili combinazioni di termini che un utente può digitare per la ricerca, ma le pagine vengono ricreare quando l'utente le richiede. La pagina dinamica ha un'estensione diversa da .html ( per esempio .php, .jsp, aspx), ed in genere ha una parte del documento fissa, ma anche una parte scritta in un linguaggio di scripting, che prima di essere mandata al client deve essere elaborata dal webserver. 4

5 Pagine dinamiche Chiaramente il server web deve essere dotato di tecnologia in grado di “costruire” su richiesta le pagine, assemblando insieme i dati e spedirle al browser. Una volta che la pagina è arrivata al client è diventata statica e la potete salvare, facendone in un certo senso una fotografia. L'utente può interagire con il server ad esempio inserendo dati che il server elabora per restituire poi una risposta sotto forma di pagina HTML. Un tipico caso è l'accesso da parte dell'utente ad un database che risiede sul server. In questo caso la pagina web funziona come una interfaccia per accedere ai dati che risiedono sul server. 5

6 Programmazione lato client
A livello di client vi possono essere dei programmi già compilati (Applet), che vengono scaricati dal server ed eseguiti sul client, oppure programmi scritti in un linguaggio di script che vengono interpretati dal client. E' la parte di programmazione che coinvolge il browser web ed è quindi dipendente dal tipo (e versione) del browser usato. Alcuni linguaggi client-side non sono supportati da alcuni browser – ad es. VBscript è supportato solo la IExplorer. Uno standard è Javascript. Tipicamente le operazioni effettuate client side sono di interazione stretta con l'utente – ad es. il controllo di dati inseriti tramite FORM (moduli). 6

7 Applet Con Applet si indicano particolari programmi Java che vengono inseriti nelle pagine HTML mediante l’elemento applet (o object) con alcuni attributi necessari all’esecuzione dell’applet. All’interno dell’elemento applet (o object) possono inoltre essere definiti parametri che vengono passati all’applet in esecuzione. Quando un browser incontra tali tag HTML carica in memoria il programma e lo esegue. 7

8 I linguaggi di scripting
I linguaggi di scripting sono pezzi di codice inseriti in pagine HTML. Introducono estensioni all’interfaccia di una pagina Web o del browser. In questo modo è possibile aumentare le potenzialità interattive di una pagina Web SENZA UNA COMPETENZA DA PROGRAMMATORE. Possono essere eseguiti sia a livello server, sia a livello client. Quando gli script sono eseguiti a livello client non possono accedere alle risorse locali (sono quindi sicuri). I principali linguaggi di scripting sono JavaScript e Visual Basic Script (VBScript). 8

9 JavaScript Nonostante il nome, il linguaggio JavaScript non ha niente a che fare con il linguaggio Java. Il codice viene inserito direttamente nelle pagine HTML preceduto dal tag <SCRIPT LANGUAGE = “JavaScript”> Il codice è normalmente composto da una serie di function che vengono richiamate in corrispondenza a eventi che occorrono nella pagina. Viene usato principalmente per realizzare form per l’immissione dati, realizzare calcoli su tabelle e per gestire la navigazione sul Web. 9

10 Programmare lato server
La programmazione di componenti software per Web application lato server si può basare su diverse tecnologie, le più comuni delle quali sono: • CGI (Common Gateway Interface); • Java servlet; • linguaggi di scripting quali: Active Server Pages (ASP), Java Server Pages (JSP) e PHP (Hypertext Processor). 10

11 ASP Le Active Server Pages (ASP) forniscono un meccanismo con cui è possibile inserire all’interno di una pagina Web il codice che è eseguito sul server a ogni accesso alla pagina. La pagina inviata al browser viene quindi generata dinamicamente in base a specifici parametri forniti in input. La tecnologia ASP è disponibile SOLO sulle piattaforme Microsoft, ma la pagina generata è visualizzabile su QUALSIASI browser. Il codice è interpretato da una componente (ASP.DLL) che opera parallelamente al Web server ed è in grado di gestire più richieste contemporaneamente (multithread). 11

12 Pagine PHP Le pagine PHP, dal punto di vista funzionale, sono simili alle pagine ASP. Sono pagine HTML che contengono codice scritto in PHP. Può girare praticamente su qualsiasi server Web, su qualsiasi sistema operativo e consente di interagire praticamente con qualsiasi tipo di database. Può essere agevolmente utilizzato per i più svariati tipi di progetti. Quando un comando dello script richiede il reperimento di dati da un database, il server Web preleva i dati dal database e li inserisce nei comandi HTML all’interno del modulo PHP per produrre un documento HTML formattato. 12

13 Server Web Apache L'esecuzione delle pagine PHP su un computer richiede che sullo stesso sia installato e in esecuzione un server Web con supporto PHP. Per tutti i sistemi operativi si può installare Apache, distribuito come software free, prelevando lo dal suo sito. Apache cerca le pagine da caricare in una cartella, che saranno dei file di testo con estensione .php ( Hypertext PreProcessor)

14 Introduzione La diffusione di PHP ha avuto un notevole incremento dalla fine degli anni Novanta a oggi, per due motivi di fondo: È open source e quindi gratuito e a disposizione di tutti, Dispone di un elevato grado di portabilità, in quanto PHP può funzionare su moltissime piattaforme, sia per quanto riguarda i sistemi operativi (Windows o Linux/Unix, ma anche Mac e altri) sia per quanto riguarda i server Web. Inoltre consente di interagire con qualsiasi tipo di database (MySQL, Access, Sql Server e altri). 14

15 Introduzione Un file PHP differisce da un documento HTML per la presenza di righe di comandi, insieme ai comandi HTML. Le righe di comandi sono scritte in linguaggio di scripting. I punti in cui inizia e termina il codice scritto in PHP sono segnalati rispettivamente dai tag: Tutto il codice racchiuso tra questi simboli viene elaborato dal server Web PRIMA che la pagina sia inviata al browser del client. 15

16 Print ed Echo Per visualizzare il codice da inviare al browser, PHP mette a disposizione due costrutti che possiamo considerare equivalenti: print() echo() Il codice: Restituisce: 16

17 I commenti I commenti svolgono un ruolo fondamentale nella stesura del codice, in quanto possono facilitare la comprensione dei vari passaggi. È bene dunque NON RISPARMIARE MAI UN COMMENTO quando possibile Il commento è caratterizzato da due barre: // Questo è un commento 17

18 Le varibili Le variabili NON devono essere dichiarate, ma il loro nome deve essere preceduto dal simbolo del dollaro ($). Con l’istruzione: $a = 5 si definisce la variabile a e le si assegna il valore 5. In fondo all’istruzione c’è il punto e virgola, che chiude tutte le istruzioni PHP. 18

19 <? $nome = ‘Gigi’?>
Le stringhe Le stringhe sono delimitate dagli apici: <? $nome = ‘Gigi’?> la concatenazione di stringhe avviene con il carattere punto (.): $nome = ‘Gigi’; $stringa1 = ‘ciao‘ . $nome; //$stringa1 vale ‘ciao Gigi’ 19

20 Gli operatori La seguente tabella riporta gli operatori disponibili in PHP: 20

21 IF… ELSE La sintassi dell’istruzione condizionale IF… ELSE… è la seguente: 21

22 SWITCH La struttura di selezione multipla SWITCH presenta questa sintassi: 22

23 Ciclo WHILE Il ciclo WHILE permette di ripetere un blocco di istruzioni fino a quando la condizione di ciclo rimane vera: 23

24 DO… WHILE… Se il codice indicato nelle parentesi graffe deve essere eseguito ALMENO una volta, si può utilizzare la seguente struttura: 24

25 FOR Il ciclo con contatore può essere scritto con l’istruzione FOR: 25

26 Array Per dichiarare un array si possono elencare i suoi valori separati da virgole: 26

27 Array Per dichiarare un array si possono elencare i suoi valori separati da virgole: Gli elementi dell’array sono identificati dall’indice che viene indicato fra parentesi quadre. L’istruzione: Restituisce il valore Luisa 27

28 Aggiungere un valore a un Array
Per aggiungere un valore all’array si può utilizzare questa istruzione: Con questo codice viene creato un nuovo elemento nell’array $nomi, con indice 5. Questa sintassi può essere utilizzata anche per definire un array. 28

29 Array associativi In PHP oltre agli array scalari è possibile definire array associativi Ogni elemento è individuato dalla coppia chiave e valore. In pratica il numero d’ordine viene sostituito da una chiave d’identificazione che rappresenta la chiave d’accesso a ogni elemento. Con la seguente Si definisce un array con tre elementi in cui il primo è accessibile tramite la chiave “Luigi” e così per gli altri due. 29

30 List ed Each Per scorrere in sequenza un array associativo si usano le istruzioni: list() usata per assegnare valori a una lista di variabili con una sola operazione, each() restituisce la coppia corrente chiave/valore di un array e incrementa il puntatore dell’array stesso. 30

31 Funzioni con i numeri 31

32 Funzioni con le stringhe
32

33 Funzioni con date e orari
Checkdate($mese, $giorno, $anno) Verifica se i valori passati costituiscono una data valida. Date(“formato”) Restituisce la data corrente di sistema nel formato specificato dalla tabella: 33

34 I FORM HTML I moduli sono elementi importanti per ogni sito Web che vuole raccogliere informazioni dai suoi utenti. Permette di interagire con gli utenti del sito offrendo loro la possibilità di immettere, o richiedere, informazioni tramite caselle di testo, menù a scorrimento, caselle da “spuntare “ e altro ancora. Il modulo, per funzionare al meglio, ha bisogno di un'ulteriore elaborazione da parte di altri linguaggi di programmazione, come per esempio il PHP. Il tag per identificare un modulo è: <form METHOD=”POST” ACTION=”Nome_File.php”> </form>. La proprietà METHOD può avere due valori: POST o GET. Il metodo GET consiste nell'accodare i dati all'indirizzo della pagina web richiesta. Col metodo POST i dati vengono inviati attraverso una richiesta che il browser invia al server, in maniera da non essere visibile per l'utente. 34

35 Caselle di testo Una casella di testo, che consiste in una finestra di una riga dove l'utente può scrivere, si realizza tramite il seguente codice: <input type=”text” name=”nome” size=”numero_caratteri”> Dove: type=”text” è il tipo di finestra; Name è il nome della finestra, servirà per identificarla nello script che elabora i dati (PHP); Size è la larghezza della finestra e corrisponde al numero di caratteri che la finestra può contenere. (value=”Valore_Iniziale). 35

36 Pulsante di comando Il codice HTML supporta tre tipi di pulsanti:
Submit, definito dal tag: <input type=”submit”>, che invia i dati del modulo ad un server Web. Reset, definito dal tag: <input type=”reset”>, che reimposta i dati del modulo a valori predefiniti o nulli. Un pulsante di comando a scopo generale, definito dal tag: <input type=”button”>. Il tag generale è il seguente: <input type=”Tipo_bottone” name=”Nome” value=”Testo”>, dove Tipo_Bottone può essere submit, reset o button; Name è il nome del pulsante; Value è il testo che appare sul pulsante. 36

37 Trasferimento di informazioni
Tutte le informazioni che l'utente inserisce in un FORM possono essere usate per diversi scopi, come per esempio: per effettuare un inserimento in un database o per interrogare un database o altro. Supponendo che nel modulo ci sia una casella di testo, definita attraverso il tag: <input type=”text” name=”nome” >, Nella pagina PHP, per poter usare il valore che l'utente ha inserito nella casella di testo occorre scrivere il seguente codice: <?php $nome=$_POST[“nome”]; ….. ?> In questo modo, il valore inserito dall'utente è stato assegnato alla variabile nome e può essere usato in diversi modi, può essere visualizzato oppure usato come valore di un campo di una tabella di un database. 37

38 Connessione al Server MySQL
La funzione mysql_connect() stabilisce una connessione ad un server MySQL. Tale funzione restituisce un identificativo di connessione MySQL in caso di successo oppure FALSE in caso di fallimento. La funzione deve ricevere tre parametri i cui valori sono prefissati: $conn=mysql_connect(“localhost”,”root”, “usbw”); Oppure con le seguenti istruzioni, associando i tre parametri a delle variabili: $hostname="localhost"; $username="root"; $password="usbw"; //connessione server sql mysql_connect($hostname,$username,$password); 38

39 Controllo sulla connessione
Poiché la funzione restituisce un valore è bene che tale valore venga assegnato ad una variabile, la chiamata alla funzione si può scrivere nel seguente modo: $conn=mysql_connect($hostname,$username,$password); In questo modo è possibile capire se la connessione è andata a buon fine. if(!$conn) print "Errore nella connessione<br>"; else print "La connessione al Server MySQL e’ avvenuta con successo<br>"; L'istruzione: mysql_close($conn); Serve per chiudere la connessione. 39

40 Connessione ad un database
Dopo aver effettuato la connessione al Server MySQL si può aprire un database, attraverso la funzione mysql_select_db(). Tale funzione riceve come parametro il nome del database che si desidera aprire, inoltre restituisce TRUE in caso di successo, FALSE in caso di fallimento. //selezione database $db=mysql_select_db("nome_database"); if(!$db) print "Errore nella selezione del database<br> "; else print "La connessione al database e’ avvenuta regolarmente<br>"; 40

41 Esecuzione di query di inserimento
Supponiamo che il modulo contenta dei dati che devono essere inseriti in una tabella, nella pagina PHP occorrerà: Effettuare la connesione al server MySQL; Effettuare la connesione al database; //inserimento prodotto $query ="insert into Nome_Tab Values ($Casella1, $Casella2, $Casella3)"; $result=mysql_query($query); //controllo l'esito if (!$result) print "Errore nella query "; Else print "Inserimento effettuato con successo"; //chiudo la connessione a mysql Attenzione, se i campi non sono numerici, si devono usare gli apici per racchiudere il valore che si intende inserire con la query. 41

42 $query ="insert into prodotti Values
($id_pr,’$descrizione',$giacenza, $punto_riordino,$scorta_sicurezza, '$unita_misura','$posizione')"; $result=mysql_query($query); //controllo l'esito if (!$result) print "Errore nella query: "; else print "Inserimento effettuato con successo"; //chiudo la connessione a mysql mysql_close();


Scaricare ppt "Eprogram informatica V anno"

Presentazioni simili


Annunci Google