TW PHP - PHP: Hypertext Preprocessor Nicola Gessa.

Slides:



Advertisements
Presentazioni simili
Introduzione al linguaggio C++
Advertisements

Shell: variabili di sistema PATH HOME USER PWD SHELL HOSTNAME HOSTTYPE Per visualizzare il valore di tutte le variabili dambiente si usa il comando set.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F2 Selezione.
Selezione - approfondimento
PHP.
Utilizzare PHP 5 Corso Interazione Uomo – Macchina AA 2005/2006.
MATLAB.
MATLAB. Scopo della lezione Programmare in Matlab Funzioni Cicli Operatori relazionali Esercizi vari.
Dipartimento di Matematica
Algoritmi e Programmazione
Mantenimento dello stato Laboratorio Progettazione Web AA 2009/2010 Chiara Renso ISTI- CNR -
Esercitazione 2 Array, funzioni, form
LIP: 1 Marzo 2005 Classe Object e Vettori. Partiamo da Lesercizio dellultima esercitazione realizzato tramite array Vedremo come si puo fare in modo piu.
Università La Sapienza Web programming e programmazione multimediale 1 Web Programming e comunicazione multimediale Lezione 10: PHP.
Modulo o Form in Html.
Indirizzi delle variabili A ogni variabile sono associati tre concetti fondamentali: il valore memorizzato; il tipo dati di appartenenza; lindirizzo. Il.
JavaScript Laboratorio di Applicazioni Informatiche II mod. A.
Argomenti dalla linea dei comandi Gli argomenti possono essere passati a qualsiasi funzione di un programma, compresa la main(), direttamente dalla linea.
JAVASCRIPT DIFFERENZA TRA JAVASCRIPT E JAVA TAG LO SCRIPT OGGETTI LE CLASSI FUNZIONE GESTORE DI EVENTI ELEMENTI DEL LINGUAGGI è un vero e proprio linguaggio.
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Introduzione a JAVA Anno Accademico 2009/2010.
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab m-file m-file script script Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali.
MATLAB.
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali Indipendenza lineare,
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali Esercizi vari Esercizi.
CORSO DI INFORMATICA LAUREA TRIENNALE-COMUNICAZIONE & DAMS
Corso di Informatica A.A
Lezione 4: Costrutti Condizionali Prof. Raffaele Montella.
Fondamenti di Informatica I a.a Il linguaggio C Il controllo di flusso La selezione condizionale Listruzione switch I cicli Le istruzioni break,
PHP – Un’introduzione Linguaggi e Traduttori 2003 Facoltà di Economia
PHP PHP Hypertext Preprocessor
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
APPLICAZIONI WEB In questo corso impareremo a scrivere un'applicazione web (WA) Marco Barbato - Corso di Applicazioni Web – A.A
Corso di PHP.
Javascript: fondamenti, concetti, modello a oggetti
Università degli Studi di Bari Laurea in Chimica Di spense di Informatica - Dott. F. Mavelli Programmare in Matlab Funzioni di Libreria Funzioni definite.
Corso di Informatica A.A Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Maria Vittoria Avolio Laurea.
Introduzione alle ASP: primi passi negli script. Frosini Andrea Università degli studi di Siena Dipartimento di Scienze Matematiche.
Introduzione a PHP Laboratorio di Progettazione Web AA 2007/2008 Chiara Renso ISTI- CNR -
Array e Funzioni in PHP Laboratorio di Progettazione Web AA 2007/2008 Chiara Renso ISTI- CNR -
BIOINFO3 - Lezione 201 Come in ogni corso di introduzione ad un linguaggio di programmazione, proviamo a scrivere lormai celebre primo programma di prova.
BIOINFO3 - Lezione 111 CGI-BIN CGI-BIN sono chiamati i programmi la cui esecuzione può essere richiesta attraverso il WEB. Il server web (httpd) della.
BIOINFO3 - Lezione 331 SUBROUTINE IN PERL Una subroutine (funzione, metodo, procedura o sottoprogramma), e` una prozione di codice all`interno di un programma.
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
Amministrazione della rete: web server Apache
File e Funzioni Si possono distinguere tre tipi di file che vengono utilizzati in MATLAB: M-file: hanno estensione .m e in essi vengono memorizzati i.
ASP – Active Server Pages - 1 -Giuseppe De Pietro Introduzione ASP, acronimo di Active Server Pages, sta ad indicare una tecnologia per lo sviluppo di.
ASP – Active Server Pages Introduzione Pagine Web Statiche & Dinamiche(ASP)
PHP - PHP: Hypertext Preprocessor. Introduzione PHP (acronimo ricorsivo per "PHP: Hypertext Preprocessor") è un linguaggio di scripting general-purpose.
JAVA Per iniziare. Verificare installazione javac –version java –version Cercare i files e sistemare eventualmente il path.
Il linguaggio PHP.
JavaScript Generalità Cos'è JavaScript?
Lezione 3 Struttura lessicale del linguaggio
Script di shell (bash).
1 Corso di Ingegneria del Web A A Domenico Rosaci 19 - Web Applications.
Introduzione a Javascript
Eprogram informatica V anno. ASP.NET Introduzione ASP.NET (Active Server Page) è il linguaggio che, sfruttando la tecnologia.NET, permette di: -scrivere.
Programmazione Web PHP e MySQL 1. 2Programmazione Web - PHP e MySQL Esempio: un blog.
Interazione col DB Per interagire con una base dati da una pagina PHP occorre procedere come segue: Eseguire la connessione al DBMS MySQL in ascolto;
MySQL Database Management System
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Ancora sulla shell. Shell e comandi La shell e' un programma che interpreta i comandi dell'utente. I comandi possono essere dati da terminale, oppure.
Introduzione a PHP Laboratorio di Progettazione Web AA 2009/2010 Chiara Renso ISTI- CNR -
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.
Cloud informatica V anno. Introduzione a PHP Lo scripting PHP PHP è un linguaggio di scripting lato server. Le caratteristiche di un linguaggio di scripting.
Eprogram informatica V anno.
Eprogram informatica V anno. Introduzione a PHP Introduzione La diffusione di PHP ha avuto un notevole incremento dalla fine degli anni Novanta a oggi,
Basi di Java Strutture base di Java. Basi di java ▪Variabili ▪Operatori ▪Condizioni e Cicli ▪Array.
ASP – Active Server Pages - 1 -Giuseppe Tandoi ASP – Active Server Pages Tecnologia per lo sviluppo di pagine dinamiche.
Transcript della presentazione:

TW PHP - PHP: Hypertext Preprocessor Nicola Gessa

TW Nicola Gessa Introduzione n PHP (acronimo ricorsivo per "PHP: Hypertext Preprocessor") è un linguaggio di scripting general-purpose Open Source molto utilizzato, specialmente indicato per lo sviluppo Web. n PHP nasce nel 1994 per opera di Rasmus Lerdorf che lo utilizzava nell’implementazione delle proprie pagine web. Nel 1995 esce la prima versione. n Nelle pagine PHP il codice PHP viene immerso nell’HTML. Il codice PHP è delimitato da speciali start e end tag che ne indicano l'inizio e la fine e che consentono di passare dal modo HTML al modo PHP. n PHP può essere usato su tutti i principali sistemi operativi, inclusi Linux, molte varianti di Unix (compresi HP-UX, Solaris e OpenBSD), Microsoft Windows, MacOS X ed è supportato dalla maggior parte dei web server esistenti, quindi anche da Apache e IIS.

TW Nicola Gessa Installazione PHP può essere utilizzato in tre ambiti differenti: n Server-side scripting: in questo caso si può adottare un modulo per l’estensione del web server (es. file.dll) oppure se non si dispone del modulo si può utilizzare PHP come motore CGI ( e quindi si deve disporre dell’eseguibile php.exe) n Command line scripting: si installa e utilizza l’interprete php.exe per l’eseguzione da linea di comando. n Applicazioni GUI. Consente di gestire finestre e oggetti grafici utilizzando l’estensione PHP-GTK che non è fornita con la distribuzione ufficiale di PHP.

TW Nicola Gessa Installazione di PHP per IIS Per installare un modulo ISAPI per IIS: n Nella console di configurazione di IIS, andare in 'Home Directory’. n Premere il pulsante ‘Configuration’. n Aggiungere una nuova voce alle Application Mapping. n Specificare il path del modulo ‘php4isapi.dll’. n Specificare l’estensione dei file da interpretare come.php. n Marcare la checkbox “Script engine” per informare che si tratta di un engine per script. n Fermare e riavviare IIS.

TW Nicola Gessa Installazione di PHP per IIS La finestra di configurazione per le Applicazioni in IIS.

TW Nicola Gessa File di configurazione n La configurazione di PHP è registrata nel file php.ini. n Il file php.ini contiene una lista di direttive. n Nel file php.ini la sintassi da seguire è questa: u Righe bianche o che iniziano con ; sono ignorate. u Gli header di sezione (es :[Foo]) sono ignorati. u Le direttive vanno specificate nella forma: direttiva=valore. I nomi delle direttive sono case sensitive. Il valore può essere un numero, una stringa o una costante u Le estensioni a PHP devono essere specificate prima del loro successivo uso nel file di configurazione. n Se usato come linguaggio di script il file php.ini viene letto prima di ogni esecuzione di PHP. Se invece PHP è utilizzato da un web server come interprete del codice delle pagine web, il file è letto solo una volta all’avvio del server.

TW Nicola Gessa Un esempio con PHP Test PHP n Il file non necessita di essere eseguibile. Questi file hanno l’estensione.php. Tutto ciò che fa è visualizzare ‘Hello World!’ usando la funzione echo di PHP inserita fra gli speciali tag n All'interno di un file HTML si può entrare ed uscire dalla modalità PHP quante volte si desidera.

TW Nicola Gessa Uscire dalla modalità HTML n Esistono 4 set di tag che possono essere utilizzati per delimitare blocchi di codice PHP: Questa è un'abbreviazione per " ". 3. echo ("altro modo per inserire codice php"); 4. Tag nello stile ASP: Una abbreviazione per " n Soltanto due di questi ( e... ) sono sempre disponibili. Gli altri possono essere attivati o disattivati tramite il file di configurazione php.ini.

TW Nicola Gessa Uscire dalla modalità HTML Il PHP permette l’uso delle strutture seguenti, dove l’output e condizionato dal valore di $expression: <?php if ($expression) { ?> Questa è vera. <?php } else { ?> Questa è falsa. <?php } ?>

TW Nicola Gessa Commenti Il PHP supporta i commenti dei linguaggi 'C', 'C++' e della shell Unix. Per esempio: <?php //Commento su una linea nella stile c++ /* Commento su più linee...ancora un'altra linea di commento */ ?> Lo stile di commento su "una linea", attualmente commenta solo fino alla fine della linea o del blocco corrente di codice PHP. Questo significa che il codice HTML posizionato dopo // ?> sarà visualizzato

TW Nicola Gessa Tipi in PHP PHP supporta 8 tipi primitivi. 4 tipi scalari :  boolean  integer  float  string 2 tipi composti:  array  object 2 tipi speciali:  resource  NULL

TW Nicola Gessa Tipi in PHP n Il tipo di una variabile di solito non viene impostato dal programmatore ma deciso a runtime da PHP in base al contesto nel quale la variabile è utilizzata. n Per controllare quale sia il tipo e i valori di una certa variabile si usa la funzione var_dump(). n Se si vuole una rappresentazione in stringa human-readable del tipo si usa la funzione gettype(). Per farne delle verifiche si può utilizzate la funzione is_type(). n Il PHP consente il type casting per modificare il tipo di una variabile.

TW Nicola Gessa Esempio sull’uso delle variabili <?php $foo = "0"; // $foo è stringa (ASCII 48) $foo += 2; // $foo è un intero (2) $foo = $foo + 1.3; // $foo è un float (3.3) $foo = 5 + "10 mele"; // $foo = 15 echo $foo."\n"; // stampa 15 //Es. sul casting $foo = 10; // $foo è un intero $bar = (boolean) $foo; // $bar è un boolean echo $bar."\n";// stampa 1 ?>

TW Nicola Gessa Esempio di tipi di PHP <?php $bool = TRUE; // boolean $str = "foo"; // string $int = 12; // integer echo gettype($bool); // stampa "boolean" echo gettype($str); // stampa "string" // se è un intero, lo incrementa di 4 if (is_int($int)) { $int += 4; } // Se $bool è una string, lo stampa // (in questo caso non viene stampato niente) if (is_string($bool)) { echo "String: $bool"; } ?>

TW Nicola Gessa Esempio var_dump() <?php $a = array (1, 2, array ("a", "b", "c")); var_dump ($a); ?> /* output: array(3) { [0]=> int(1) [1]=> int(2) [2]=> array(3) { [0]=> string(1) "a" [1]=> string(1) "b" [2]=> string(1) "c" } } */

TW Nicola Gessa Stringhe in PHP n Le stringhe in PHP non pongono limiti nella lunghezza. n Si possono definire usando l’apice singolo. In questo caso la stringa non è mai interpretata. echo ’questa è una semplice stringa'; n Si possono definire usando le doppie virgolette. In questo caso PHP interpreta le variabili e i caratteri di escape contenuti nella stringa. echo “stampo la variabile \$var: $var”; n Si possono definire usando l’operatore <<< Es: $str = <<<EOD Esempio di stringa definita usando la sintassi heredoc. EOD; Anche in questo caso la stringa è interpretata.

TW Nicola Gessa Stringhe in PHP n Operatori di stringa: u l’operatore ‘.’ Concatena due stringhe u l’operatore ‘.=‘appende ad una variabile la stringa a destra dell’uguale. u Il confronto tra stringhe si esegue utilizzando gli operatori ==, !=,, =

TW Nicola Gessa Array in PHP n PHP fornisce array associativi per memorizzare coppie chiave-valore. Non ci sono differenze fra array con indici e array associativi: PHP fornisce un solo tipo di array. n Un array può essere creato usando il costrutto array: $arr = array("foo" => "bar", 12 => true); echo $arr["foo"]; // bar echo $arr[12]; // 1 n La chiave può essere sia un intero che una stringa. n Un elemento di un array può essere di uno qualunque dei tipi PHP $arr = array("somearray" => array(6 => 5, 13 => 9, "a" => 42)); echo $arr["somearray"][6]; // 5 echo $arr["somearray"][13]; // 9 echo $arr["somearray"]["a"]; // 42

TW Nicola Gessa Array in PHP n Se la chiave di un nuovo elemento è omessa, viene adottata come nuova chiave il massimo indice intero dell’array +1. Questo vale anche per gli indici negativi. n Se non esiste un indice intero, la nuova chiave avrà valore 0. n Se viene specificata una chiave già esistente il vecchio valore sarà sovrascritto. n Non si possono usare array o oggetti come chiavi. n Una volta creato l’array può essere modificato. $arr = array(5 => 1, 12 => 2); $arr[] = 56; // Come fare $arr[13] = 56; $arr["x"] = 42; // Aggiunge un nuovo elemento unset($arr[5]); // Rimuove l’elemento dall’array unset($arr); // Cancella tutti gli elementi

TW Nicola Gessa Strutture di controllo - 1 n Costrutto if.. else if ($a > $b) { print "a è maggiore di b"; } else { print "a NON è maggiore di b"; } n elseif estende if aggiungendo la possibilità di eseguire un'altra istruzione nel caso in cui l'espressione contenuta nel ramo if sia FALSE if ($a > $b) { print "a è maggiore di b"; } elseif ($a == $b) { print "a è uguale a b"; } else { print "a è minore di b"; }

TW Nicola Gessa Strutture di controllo - 2 n Costrutto while $i = 1; while ($i <= 10) { print $i++; } n Costrutto do..while $i = 0; do { print $i; } while ($i>0); n Costrutto for for ($i = 1; $i <= 10; $i++) { print $i; }

TW Nicola Gessa Strutture di controllo - 3 n Costrutto for..each $a = array (1, 2, 3, 17); foreach ($a as $v) { print "Valore corrente di \$a: $v.\n"; } Costrutto switch switch ($i) { case 0: print "i è uguale a 0"; break; case 1: print "i è uguale a 1"; break; case 2: print "i è uguale a 2"; break; } n break termina l'esecuzione di una struttura for, foreach, while, do..while o switch. n continue si utilizza per interrompere l'esecuzione del ciclo corrente e continuare con l'esecuzione all'inizio del ciclo successivo

TW Nicola Gessa include() e require() n include() e require() includono e valutano uno specifico file. n include() e require() sono identiche in ogni senso eccetto per come esse trattano gli errori:include() produce un warning mentre require() restituisce un Fatal Error. n Quando un file viene incluso, il codice che esso contiene eredita lo scope delle variabili della riga in cui si verifica l'inclusione. n require() e include() devono essere inclusi all'interno di blocchi di istruzioni se si trovano in un blocco condizionale. n È possibile eseguire un'istruzione return() in un file incluso per terminare l'esecuzione di quel file e restituirlo allo script che l'ha chiamato.

TW Nicola Gessa Funzioni in PHP Una funzione può essere definita usando la sintassi function myfunc($arg_1, $arg_2,..., $arg_n) { echo "Funzione di esempio.\n"; return $retval; } n PHP non supporta l'overloading di funzioni n PHP 4 supporta un numero variabile di argomenti e gli argomenti di default n PHP supporta il passaggio di argomenti per valore e per riferimento (di default, gli argomenti della funzione sono passati per valore) n Il passaggio per riferimento si ottiene anteponendo un ampersand (&) al nome dell'argomento nella definizione della funzione n I valori vengono restituiti usando l'istruzione opzionale return. n Può essere restituito qualsiasi tipo, incluse liste ed oggetti.

TW Nicola Gessa Classi e oggetti n Le classi sono tipi del linguaggio. n Una classe si definisce usando la seguente sintassi: <?php class Cart{ var $items; // Articoli nel carrello // lo uso come array associativo // Aggiunge $num articoli di $artnr nel carrello function add_item ($artnr, $num) { $this->items[$artnr] += $num; } ?>

TW Nicola Gessa Classi e oggetti n Per creare una variabile oggetto si usa l'operatore ‘new’. $cart = new Cart; Si può accedere ai metodi della classe usando l’operatore ‘->’ $cart->add_item(”Mele",10 ); Questa operazione aggiunge all’array associativo items la nuova coppia (Mele,10). n Per stampare i valori dell’array si può usare ancora l’operare -> echo $cart->items["Mele"];//stampa 10 si specifica un solo simbolo di $ per accedere alla variabili n Per poter accedere all'interno della classe alle funzioni e alle variabili interne della stessa classe si usa la pseudo-variabile ‘$this’

TW Nicola Gessa Classi e oggetti n E’ possibile generare classi per estensione di altre classi. n Una classe estesa o derivata ha tutte le variabili e le funzioni della classe di base più tutto ciò che viene aggiunto dall'estensione. n Non è possibile che una sottoclasse ridefinisca variabili e funzioni di una classe madre. n L'eredità multipla non è supportata n Le classi si estendono usando la parola chiave 'extends'. class Named_Cart extends Cart{ var $owner; function set_owner ($name) { $this->owner = $name; }

TW Nicola Gessa Classi e oggetti n In PHP si possono definire i costruttori di classe che vengono invocati automaticamente quando viene istanziato un oggetto con l’operatore new. class Auto_Cart extends Cart { function Auto_Cart() { $this->add_item ("10", 1); } n L'operatore :: è usato per riferirsi alle funzioni di classi senza istanziarle. Si possono usare funzioni della classe, ma non le variabili della classe.

TW Nicola Gessa Variabili speciali PHP definisce un certo numero di array associativi speciali disponibili all’interno degli script server-side tra le quali: n $_SERVER: contiene variabili impostate dal web server e relative all’ambiente di esecuzione dello script n $_GET: contiene variabili ricevute dallo script via HTTP GET n $_POST: contiene variabili ricevute dallo script via HTTP POST n $_ COOKIE: contiene variabili ricevute dallo script tramite l’invio di cookie n $_ENV: contiene variabili d’ambiente dello script. n $_SESSION: contiene variabili che sono correntemente registrate nella sessione di esecuzione dello script.

TW Nicola Gessa Esempi con le variabili speciali Vediamo come verificare che tipo di browser sta utilizzando la persona che visita le nostre pagine. Per fare questo si controlla la stringa dell'user agent che il browser invia come parte della richiesta HTTP. Quest'informazione viene registrata in una variabile. La variabile alla quale ci riferiamo adesso è $_SERVER["HTTP_USER_AGENT"] n L'output (risultato) di questo script potrebbe essere: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0) n $_SERVER è soltanto un array che automaticamente viene reso disponibile da PHP.

TW Nicola Gessa Gestire le form Qualsiasi elemento inviato tramite una form è automaticamente disponibile negli script PHP. Es: Il tuo Nome: La tua età: Quando l'utente riempie questa form e preme il pulsante submit, viene richiamata la pagina action.php.

TW Nicola Gessa Gestire le form - 2 n Nella pagina action.php lo script di gestione della form precedente potrebbe essere: Ciao. La tua età è di anni. n Ecco un possibile output di questo script: Ciao Joe. La tua età è di 22 anni. n Le variabili $_POST["name"] e $_POST["age"] vengono impostate automaticamente dal PHP. n Se usassimo il metodo GET le informazioni ricavate dalla nostra form si troverebbero invece in $_GET.

TW Nicola Gessa Gestione delle sessioni n PHP consente nel mantenere certi dati attraverso accessi successivi con l’uso delle sessioni. n Il sistema di gestione delle sessioni supporta un numero di opzioni di configurazione che possono essere impostate nel file php.ini. n Al visitatore del sito web viene assegnato un id unico, il cosidetto id di sessione. Questo viene registrato in un cookie sul lato utente o è propagato tramite l'URL.Quando un visitatore accede al sito, PHP controllerà automaticamente (se session.auto_start è settato a 1 in php.ini) se uno specifico id di sessione sia stato inviato con la richiesta. n Le sessioni sono gestite un 2 modi u Tramite session_register() che registra variabili nella sessione corrente. u Con $_SESSION. Si può accedere alle variabili di sessione come a variabili normali in un array.

TW Nicola Gessa Gestione delle sessioni Registrare una variabile con $_SESSION. //isset verifica se la variabile è definita if (!isset($_SESSION['count'])) { $_SESSION['count'] = 0; } else { $_SESSION['count']++; } n Resettare una variabile con $_SESSION. unset($_SESSION['count']); n Registrare una variabile con session_register(). $nome = ”Mario"; session_register(”nome");

TW Nicola Gessa Espressioni regolari n Il PHP fornisce un insieme di funzioni che forniscono l’interfaccia per l’uso di espressioni regolari con una sintassi compatibile con Perl 5. n Il supporto per le espressioni regolari è ottenuto mediante la libreria PCRE, che è un software open source, scritto da Philip Hazel, ed il cui copyright è detenuto dalla Università di Cambridge, Inghilterra. A partire dalla versione di PHP queste funzioni sono abilitate per default. n Le espressioni regolari devono essere racchiuse tra delimitatori, ad esempio /. Il delimitatore finale può essere seguito da vari modificatori che agiscono sul criterio di riconoscimento. n Le funzioni per le espressioni regolari consentono anche le operazioni di sostituzione e split delle stringhe.

TW Nicola Gessa Espressioni regolari - funzioni n La funzione preg_grep() restituisce un array composto dagli elementi dell'array preso in input che soddisfano i criteri impostati nell’espressione regolare specificata. $array = array("1" => "stringa1", 2 => "stringa2"); $f_array = preg_grep ("/ga1/", $array); echo $f_array[1];//stampa stringa1 n La funzione preg_match() restituisce il numero di volte in cui è avvenuto il riconoscimento della espressione regolare nelle stringa di testo. if (preg_match ("/php/i", "PHP supporta le e. r.")) { echo ”Riconoscimento avvenuto."; }// stampa questo else { echo "Testo non riconosciuto."; }

TW Nicola Gessa Esempio Si vuole creare una pagina PHP che consenta a degli utenti di inserire il proprio nome da aggiungere ad una lista. Per fare questo si deve: n Predisporre un database per la registrazione dei dati ricevuti, quindi creare le tabelle con i campi necessari. n Creare una pagina HTML che consenta agli utenti di inserire i dati da registrare. n Creare la pagina php che ricevuti i dati via web, utilizza le funzioni di accesso al database per la registrazione dei dati.

TW Nicola Gessa Predisporre il database n Si crea il database ListaClienti con Access. n Si crea la tabella Utente con i campi Nome, Cognome e ID. n Si crea una sorgente dati ODBC per questo data base

TW Nicola Gessa La pagina php - 1 Sia l’invio che la registrazione dei dati vengono fatti nella stessa pagina <?php $myconn=odbc_connect("ListaClienti","",""); $query = <<<EOD insert into UTENTI (Nome,Cognome) values ('$_POST[Nome]','$_POST[Cognome]') EOD; if($_POST["Nome"] <>""){ $res=odbc_exec($myconn, $query); } ?>

TW Nicola Gessa La pagina php - 2 Lista degli utenti: <?php $res=odbc_exec($myconn, "select * from UTENTI"); //odbc_result_all($res);//inserisce il risultato in una //tabella html $i=1; while(odbc_fetch_row($res,$i)){ $nome = odbc_result($res, "Nome"); $cognome = odbc_result($res, "Cognome"); $i++; echo $nome." - ".$cognome." "; }?>

TW Nicola Gessa Il risultato

TW Nicola Gessa Link Utili n n n n