Laboratorio Progettazione Web Il linguaggio PHP - Introduzione. Andrea Marchetti IIT-CNR AA 2013/2014

Documenti analoghi
Laboratorio di Progettazione Web

Laboratorio Progettazione Web Il linguaggio PHP Variabili e Istruzioni. Andrea Marchetti CNR/IIT AA 2016/2017

Laboratorio Progettazione Web Applicazioni Web

Il linguaggio PHP. Elementi base

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Lezione 6 Introduzione al C++ Mauro Piccolo

Guida introduttiva al PHP

Introduzione a Matlab

PROBLEMI ALGORITMI E PROGRAMMAZIONE

... Introduzione PHP. Corso di Basi di Dati. Thursday, June 5, Esempio: - display_errors: impostato su 'on' mostra gli errori sul browser.

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Programmazione web lato client con JavaScript. Marco Camurri 1

Laboratorio Progettazione Web Applicazioni Web Lezione 2. Andrea Marchetti IIT-CNR 2011/2012

Laboratorio Progettazione Web Il linguaggio PHP Lezione 6. Andrea Marchetti IIT-CNR 2011/2012

Laboratorio Progettazione Web Il linguaggio PHP Le Istruzioni. Andrea Marchetti IIT-CNR AA 2014/2015

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C

Laboratorio Progettazione Web Le funzioni in PHP. Angelica Lo Duca IIT-CNR 2012/2013

Laboratorio Progettazione Web Il linguaggio PHP Le Istruzioni. Andrea Marchetti IIT-CNR AA 2015/2016

Programmazione in Java (I modulo)

Concetti base programmazione. Antonio Gallo

Linguaggi di Programmazione

Fondamenti di Informatica T-1

Linguaggi, Traduttori e le Basi della Programmazione

Unità F1. Obiettivi. Il linguaggio C. Il linguaggio C++ Linguaggio C. Pseudolinguaggio. Primi programmi

BASI LINGUAGGIO. Programmazione Web 1

PHP 1. Che cosa è PHP 1. Che cosa è PHP 2

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab

Costanti e Variabili

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2009/2010

Le basi del linguaggio Java

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo

Javascript. - Corso Web Design - Media Dream Academy. Stefano Gaborin

Primi passi col linguaggio C

Informatica Generale Andrea Corradini Ancora sui linguaggi di programmazione

Indice PARTE A. Prefazione Gli Autori Ringraziamenti dell Editore La storia del C. Capitolo 1 Computer 1. Capitolo 2 Sistemi operativi 21 XVII XXIX

Gli statement. Gli statement. Gli statement. Gli statement. Gli statement

Tipi di dato semplici

Il calcolatore. Architettura di un calcolatore (Hardware)

Fortran in pillole : prima parte

Introduzione Dal problema al programma Architettura del calcolatore Le reti ed internet Rappresentazione dell informazione Elementi di programmazione

VBA Principali Comandi

SISTEMI OPERATIVI, RETI, INTERNET

Linguaggio C - sezione dichiarativa: costanti e variabili

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

Laboratorio di Programmazione Laurea in Bioinformatica

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Variabili d ambiente (2) Variabili d ambiente. Ambito delle Variabili (2) Ambito delle Variabili

1 PANORAMICA SUL LINGUAGGIO C

INFORMATICA. L informatica comprende:

Funzioni, Stack e Visibilità delle Variabili in C

Mantenimento dello stato

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

I Linguaggi di Programmazione

Caratteristiche di un linguaggio ad alto livello

Modulo 2: Strutture fondamentali della programmazione Java

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

Linguaggi di Programmazione

Linguaggi di programmazione

4. I moduli in Access 2000/2003

2011 Politecnico di Torino 1

Introduzione alla programmazione

Unità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma.

5. Codifica degli Algoritmi in C

Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema

Tipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi:

Corso sul linguaggio Java

Corso di Fondamenti di Informatica Il sistema dei tipi in C++

Dispense di Informatica Anno Scolastico 2008/2009 Classe 3APS. Dall'Algoritmo al Programma

Linguaggio C Struttura dei programmi

D B M G Il linguaggio HTML

Espressioni con effetti collaterali

Linguaggio C++ Linguaggi di terza generazione

@2011 Politecnico di Torino 1

Informatica Applicata al Suono Tutorial Matlab

Variabili e Istruzioni

Algoritmi e basi del C Struttura di un programma

Sviluppare un programma in FORTRAN

Corso di PHP. Prerequisiti. 6.2 PHP e il web 2. Conoscenza HTML Tecnica della programmazione Principi di programmazione web

Tipi di dato strutturati: Array

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

Laurea Specialistica - Media Education. Dr. Annamaria Bria 1

Laboratorio Progettazione Web Array in PHP. Andrea Marchetti IIT-CNR 2013/2014

Indice. Prefazione. 3 Oggetti e Java 53

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Esonero di Informatica I. Ingegneria Medica

Passare argomenti al programma

LINGUAGGI DI ALTO LIVELLO

INTRODUZIONE ALLA PROGRAMMAZIONE

Introduzione a PHP Gestione dei Dati e della Conoscenza

Sommario PREFAZIONE...XI CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 CAPITOLO 2: INTRODUZIONE ALLA PROGRAMMAZIONE IN C...

3) Descrivere l architettura di un elaboratore tramite astrazione a livelli

Il Software programmabili programma algoritmo

AMBIENTI DI PROGRAMMAZIONE

3.3.6 Gli operatori Le funzioni di accesso al tipo Le strutture di controllo Le funzioni

LEZIONE 11 IMPARIAMO A PROGRAMMARE: I DATI E LE VARIABILI Laboratorio di Informatica per l Educazione A. A. 2014/2015

Transcript:

Laboratorio Progettazione Web Il linguaggio PHP - Introduzione Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.it AA 2013/2014

Outline Linguaggi di programmazione richiami generali Introduzione al PHP Variabili Stringhe e funzioni su stringhe Istruzioni di assegnamento

Programma Tramite un programma posso definire: i dati Costanti, variabili, array Di tipo intero, stringa, reali, l elaborazione dei dati Operatori, condizioni, cicli, funzioni Quando studio un nuovo linguaggio di programmazione devo capire come definire Dati Istruzioni di elaborazione

Concetti generali Algoritmo procedimento per la soluzione di una classe di problemi attraverso un numero finito di passi. Programma codifica di un algoritmo in un certo linguaggio di programmazione come sequenza ordinata di istruzioni che, a partire da dei dati in ingresso,restituisce dei risultati in uscita in seguito alla loro elaborazione. Traduttore Eseguibile programma scritto in linguaggio macchina ovvero nel formato adatto ad essere caricato dal sistema operativo, e all'architettura hardware del processore che lo esegue

Traduttori I traduttori sono programmi particolari che provvedono a convertire il codice di programmi scritti in un dato linguaggio di programmazione (sorgenti) nella corrispondente rappresentazione in linguaggio macchina (programmi oggetto o eseguibili) 5

Traduzione codice sorgente (scritto in qualche linguaggio di alto livello) codice oggetto ("eseguibile") x = y +2 00010100 11001011 00010110 00000010 00010111 11001111 traduttore indirizzo di y indirizzo di x 6

Due tipi di traduttori Interpreti traducono ed eseguono direttamente ciascuna istruzione del programma sorgente, istruzione per istruzione Programma sorgente Interprete Risultato Compilatori accettano in input l'intero programma e producono in output la rappresentazione dell'intero programma in linguaggio macchina Programma sorgente Compilatore Programma eseguibile Processore Risultato

Interprete vs compilatore compilazione migliori prestazioni (la traduzione viene effettuata una volta sola) processi di ottimizzazione (compilazione sull'intero programma) interprete in caso di modifiche, consente di eseguire il programma non appena il codice sorgente sia stata aggiornato Il PHP è un linguaggio interpretato 8

Elementi di PHP 1. Costanti, variabili, tipi di dati Operatori, condizioni, cicli 2. Interazione con i Browser 3. Array 4. Interazione con i DB 5. Funzioni

Scheda PHP Sviluppatore ThePHPGroup Ultima versione 5.5.0 Beta 2 (28 marzo 2013) S.O. Genere Licenza Multipiattaforma Linguaggio di scripting Free, opensource Sito web http://www.php.net

PHP Supportato da numerose comunità online Integrabile con numerose librerie esterne Interpretato Introdotto da Lerdorf nel '94 PHP è un acronimo ricorsivo che sta per PHP: Hypertext Preprocessor

PHP Concepito per la programmazione Web ovvero la realizzazione di pagine web dinamiche linguaggio di script interpretato da una componente aggiuntiva del server web, detto processore PHP o interprete PHP L'elaborazione di codice PHP sul server produce codice HTML da restituire al browser Permette di interagire con vari database, MySQL, Oracle, Postgres...

Funzionamento PHP Browser Web http://www.example.com/lpw.php Get lpw.php Server Web html HTML Recupera da htdocs Genera l'html Lpw.php Processore Php Server www.example.com

Caratteristiche di uno script PHP Requisito: Apache con il processore PHP Termina con l'estensione.php Quando il server gestisce un documento richiesto con estensione.php lo passa direttamente al Processore PHP Si può configurare il server web affinche invochi sempre il processore php anche per documenti con estensione.htm o.html. Utile se si vuole nascondere che stiamo usando php. Il processor php restituisce alla fine dell'elaborazione un file HTML Se il documento.php contiene solo codice HTML il risultato sarà il documento stesso

Programmi PHP per Applicazioni Web <?php echo "<html>"; echo "Oggi è il ". date("d/m/y"); echo "</br>"; echo "e sono le ore ". date("h:i:s"); echo "</html>";?> <html> Oggi è il <?php echo date("d/m/y");?></br> Sono le ore <?php echo date("h:i:s");?> </html> Processore PHP Il Processore PHP interpreta solo il codice contenuto tra <?php e?> il resto lo fa passare <html> Oggi è il 22/03/2012</br> e sono le ore 15:00 </html> L'esecuzione del programma PHP produce una pagina HTML

Delimitatori PHP Il codice PHP si intervalla al codice HTML. I delimitatori permettono al server web di distinguerlo dall'html I delimitatori di PHP sono i caratteri: <?php per indicare l'inizio (l uso <? È?> deprecato) per indicare la fine

Delimitatori PHP Il codice PHP si intervalla al codice HTML delimitato ogni volta da 2 indicatori <?php per indicare l'inizio Oppure semplicemente <? (deprecato)?> per indicare la fine

Test Esecuzione PHP <?php echo "<html>"; echo "Oggi è il ". date("d/m/y"); echo "</br>"; echo "e sono le ore ". date("h:i:s"); echo "</html>";?> Invocazione tramite browser http://localhost/prova.php Assicurarsi che il file prova.php sia sotto la directory xampp/htdocs Invocazione diretta php prova.php Assicurarsi di poter vedere il processore php dalla directory in cui si trova il programma( PATH=C:\...\PHP\ ) Utile per eseguire dei test sul codice

Sintassi di Base I comandi in PHP terminano con il carattere ; Dimenticarlo costituisce il 90% dei primi errori echo "Salve"; Le variabili in PHP sono precedute dal carattere $ $Eta=18;

Commenti I commenti sono utili per spiegare il codice scritto (USARLI SPESSO!!!) per disabilitare temporaneamente porzioni di programma. Esistono tre tipi di commenti: 1. /* Questo è un commento a riga multipla, fate attenzione a non annidarli */ 2. // commento a riga singola 3. # commento a riga singola

Variabili Una variabile identifica una porzione di memoria destinata a contenere dei dati, che possono essere modificati nel corso dell'esecuzione di un programma. Una variabile è acceduta tramite un nome definito in fase di dichiarazione della variabile Una variabile prende un determinato valore mediante un operazione di assegnamento età = 18; età 18 Una costante è invece una porzione di memoria che mantiene lo stesso valore per tutta la durata dell'esecuzione del programma. Nei linguaggi tipizzati, ciascuna variabile è caratterizzata da un tipo di dato, che restringe i valori accettabili

Variabili in PHP La gestione delle variabili in PHP è molto semplificata La dichiarazione di una variabile avviene al suo primo utilizzo $indirizzo = "Via Guglielmo Marconi, 1" ; /* posso usare una variabile anche senza dichiararla*/ PHP non è un linguaggio tipizzato $età = 18; // non c'è modo di dichiarare che è una variabile intera $eta = "diciotto"; /* posso assegnare alla stessa variabile tipi di dati differenti nello stesso programma */

Vincoli sui nomi di variabili Le variabili in PHP si denotano con una sequenza di caratteri preceduti dal simbolo $ I nomi sono case sensitive Età diverso da età Devono iniziare con una lettera o il carattere underscore _ Possono contenere solo i caratteri: a-z, A-Z, 0-9, _ $miavar $_ENV $var45 SI miavar $2pippo NO

Esempio <HTML><HEAD><TITLE>Esempio PHP</TITLE></HEAD> <BODY> Questo testo è in HTML <?php // memorizzo e visualizzo il mio nome $nome = "Andrea"; echo $nome;?> </BODY></HTML>

Tipi delle variabili Un tipo è la descrizione del formato dei valori che una variabile può assumere In PHP non devo dichiarare il tipo di una variabile, sarà assegnato al primo uso della variabile Una variabile PHP può cambiare tipo Boolean (TRUE, FALSE) $pagato = FALSE; Integer $count=1; Float, double $miavar=1.456; String $messaggio="benvenuto";

Variabili numeriche $a = 4; $b = 2; echo $a * $b; // produce 8 $a = 2.3; echo $a * $b; // produce 4.6

Operatori aritmetici Operatore Descrizione Esempio $a=4; $b=2; + Addizione $a+$b; //6 - Sottrazione $a-$b; //2 * Moltipicazione $a*$b; //8 / Divisione $a/$b; //2 % Modulo $a%$b; //0 ++ Incremento di 1 $a++; //5 -- Decremento di 1 $a--; //3

Stringhe Le stringhe sono sequenza di caratteri alfanumerici. Possono essere definite con i caratteri ' oppure " L'unione di stringhe si effettua con il carattere punto. $nome = "Mario"; $cognome="rossi"; $nomeintero=$nome. $cognome; // = "MarioRossi" $nomeintero=$nome. " ". $cognome; // = "Mario Rossi "

Stringhe Differenza tra virgoletta singola e doppia $età=18; echo 'Anna ha $eta anni'; // letterale echo "Anna ha $eta anni"; // interpretato /* la prima istruzione produce Anna ha $eta anni la seconda istruzione produce Anna ha 18 anni : provare */

Stringhe Le stringhe che contengono un numero nella parte iniziale possono essere convertite in numero Esempio: $stringa="45 anni"; $numero=23; $somma = $numero + $stringa; // produce 68

Operatori su stringhe strlen(stringa) restituisce il numero di caratteri della stringa trim/ltrim/rtrim(stringa). Trim elimina spazi all'inizio e alla fine della stringa, ltrim a sinistra rtrim a destra substr(stringa, intero1 [,intero2]). Restituisce la sottostringa che inizia alla posizione intero1 eventualmente fino a intero1+intero2 str_replace(str1,str2,str3) restituisce una nuova stringa dove sostituisce tutte le occorrenze di str1 con str2 in str3. strtolower/strtoupper(stringa) converte tutti i caratteri in minuscolo/maiuscolo Il confronto tra stringhe si effettua con gli usuali operatori di confronto ==, <, >

Esempio manipolazione di stringhe <?php $disney="pippo pluto e paperino"; $n=strlen($ disney); echo $n;?> Restituirà la lunghezza in caratteri della stringa

Variabili predefinite Fornite direttamente dall ambiente PHP sono disponibili da programma Contengonomolte informazioni sull ambiente di esecuzione del programma o script Sono organizzati come array associativi (vedremo meglio in seguito) Evitare di ridefinirle. Variabilepredefinite $GLOBALS $_SERVER $_GET $_POST $_FILES $_COOKIE $_REQUEST $_ENV Descrizione Tutte le variabili che sono correntemente definite nel programma Create dal server web, danno informazioni sull ambiente di esecuzione del programma Variabili passate al programma tramite il metodo HTTP GET Variabili passate al programma tramite il metodo HTTP POST Oggetti passati al programma tramite il metodo HTTP POST Variabili passate al programma tramite HTTP cookies $_GET, $_POST, $_COOKIE Variabili passate al programma tramite metodi di ambiente

Passaggio di parametri con la richiesta URL http://localhost/lpw.php?reg=toscana&pro=pisa Browser Web Salve 1. 2. 3. lpw.php reg=toscana pro=pisa lpw.php <?php $regione = $_GET['reg']; $provincia = $_GET['pro']; echo "la regione è $regione</br>"; echo "la provincia è $provincia";?>

Esercizio Scrivere una URL con una Query String dove l utente possa passare una parola e un colore http://localhost/ex2.php?word=mondo&color=red Scrivere un programma php che legge i dati della URL e in base al colore restituisce una pagina HTML contenente la parola nel colore indicato

Esercizio http://localhost/lpw.php?word=welcome&col or=red La pagina HTML restituita dovrà essere visualizzata dal browser nel seguente modo Welcome

Una possibile soluzione <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>colored Word</title> </head> <body> <?php $color=$_get['color']; $word =$_GET['word']; echo "<p style='color:$color'>$word</p>";?> </body> </html>

Esercizio http://localhost/lpw.php?word=welcome La pagina HTML restituita dovrà contenere la parola e la sua lunghezza Usare la funzione strlen() Welcome è lunga 7