Laboratorio di Progettazione Web

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

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

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

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

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

07 PhP parte 1 AVVISI DI SERVIZIO. Materiale didattico. Apertura Wamp

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

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Connessione con MySQL

Programmazione web lato client con JavaScript. Marco Camurri 1

Il linguaggio PHP. Elementi base

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I

Le basi del linguaggio Java

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

Concetti base programmazione. Antonio Gallo

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

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

Mantenimento dello stato

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

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

Shell: variabili di sistema. Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set

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

BASI LINGUAGGIO. Programmazione Web 1

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

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

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

VBA Principali Comandi

Programmazione con il linguaggio LibreOffice Basic

Corso di Laboratorio di Sistemi Operativi

Foglio Elettronico Lezione 1

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

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

Introduzione a PHP Gestione dei Dati e della Conoscenza

Fortran in pillole : prima parte

Laboratorio di Programmazione Laurea in Bioinformatica

Guida introduttiva al PHP

Perché il linguaggio C?

Unità Didattica 2 Linguaggio C. Espressioni, Operatori e Strutture linguistiche per il controllo del flusso

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

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

Funzionalità. Il preprocessore C. Inclusione di file. Inclusione di file

XAMPP - Cos'è e installazione in locale

Programmazione in Java (I modulo)

STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe

Informatica Applicata al Suono Tutorial Matlab

Lezione 6 Introduzione al C++ Mauro Piccolo

5 - Istruzioni condizionali

Corso di Fondamenti di Informatica

Un esempio di if annidati

MANUALE MODULO WIDGET EVENT TRACKING LICENZA SaaS

Programmazione in Python. Moreno Marzolla

Corso di Calcolatori Elettronici Un computer è un dispositivo in grado di eseguire dei calcoli e di prendere delle decisioni logiche.

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Tipi di dato primitivi

Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1

Sviluppare un programma in FORTRAN

Introduzione al MATLAB c Parte 3 Script e function

Linguaggi di Programmazione

Corso di JavaScript. Prerequisiti. B1 Tipi di dato e operatori. Concetto di variabile, espressione e tipo di dato

Introduzione al C++ (continua)

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

LEZIONE PRECEDENTE. 1 Abilità Informatiche e Telematiche. 03/04/2015 Dott. ssa Carmen De Maio

Laboratorio di Progettazione Web Introduzione

#include <iostream> // libreria che gestisce flusso di input e output. using namespace std; // uso di librerie standard del C++

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal

osservazione: 1 MCD(m,n) min(m,n) = si provano i numeri compresi tra 1 e min(m,n) conviene iniziare da min(m,n) e scendere verso 1

Laboratorio Progettazione Web Applicazioni Web

BASI LINGUAGGIO. Programmazione Web 1

Fogli Elettronici. Idoneità Informatica Prof. Mauro Gaspari

Algoritmi e basi del C Struttura di un programma

Elaborato Shell. Elementi di architettura e sistemi operativi 2016/2017

JavaScript Core Language. Prof. Francesco Accarino IIS Atiero Spinelli Sesto San Giovanni via leopardi 132

Le direttive del Preprocessore

Matlab 5. Funzioni. Slide basate sul corso di C. Blundo. A.A. 2010/ GPersiano. Laboratorio di Informatica per Fisici 1

Prefazione... xi. Da leggere prima di iniziare...xiv. Capitolo 1 Introduzione a JavaScript Sezione A Programmazione, HTML e JavaScript...

Modulo o Form in Html

XAMPP Installazione e configurazione

Lezione 5: Controllo del flusso e costrutti avanzati

Lezione 3: Programmazione della Shell di Unix

Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 17/01/2014/ Foglio delle domande / VERSIONE 1

Corso di Web Programming

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

$QDOLVLGHOSURJUDPPDTXDGUDWR

Richiesta pagina PHP (es: index.php)

Avviate l interprete Python selezionandolo dal menu dei programmi. Una volta avviato, l interprete presenta un cursore in cui inserire comandi

Un esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);

Problema: calcolare il massimo tra K numeri

Lezione 6. Siti, Utenti e Sessioni

Laboratorio di Progettazione Web

Controllo di flusso negli script: if-then-else

CORSO LINUX PER LA CERTIFICAZIONE LPI ESSENTIALS

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro

EXCEL software Excel .xlxs, La cella intestazione della colonna intestazione di righe l indirizzo della cella testo numeri formule

DIPARTIMENTO DI ELETTRONICA, INFORMAZIONE E BIOIGNEGNERIA. INFORMATICA B Ingegneria Elettrica. Script in Matlab

Introduzione all ambiente MATLAB. Richiami II. Calcolo Numerico - A.A. 2008/09

Qualsiasi programma in C++ segue lo schema:

Programmare server. Programmazione Web 1

Java il Corso Fondamentale

28/02/2014 Copyright V. Moriggia

Transcript:

Introduzione a PHP Laboratorio di Progettazione Web AA 2009/2010 Chiara Renso ISTI- CNR - c.renso@isti.cnr.it

Il linguaggio PHP (PHP Hypertext Preprocessor) è un linguaggio di script lato server, viene cioè interpretato da una componente aggiuntiva del server web. E generalmente impiegato per applicazioni web. E un linguaggio free opensource, liberamente scaricabile da www.php.net e supportato da numerose comunità online. E indipendente dalla piattaforma Permette di interagire con vari database, tipicamente MySQL ma anche Oracle, Postgres e molti altri. E integrabile con numerose librerie esterne (grafica, mail, pdf etc) Per l installazione possiamo usare un kit, come Wamp (windows), XAMMP (Linux o Windows), MAMP (MacOS) o EasyPHP (Windows). Per una guida ai kit di installazione su Windows http://php.html.it/articoli/leggi/2568/php-apache-e-mysql-suwindows-in-un-clic/1/

Pagine facili da creare e non necessitano di compilazione. PHP è un linguaggio di scripting server side free opensource E stato introdotto da Lerdorf nel 94 Le pagine PHP sono completamente integrate con l HTML. Il linguaggio di scripting è meno strutturato di un linguaggio di programmazione classico.

1) Indipendente dalla piattaforma (Windows,MacOS,Linux) 2) Necessita di un Webserver (Apache, IIS, ) 3) Possibilità di connessione a molti database (Oracle, MySQl, Postgres, Access,.) 4) La versione attuale è la 5 5) E uno dei linguaggi lato server più usati al mondo, è installato su più di 20 milioni di websites (Wikipedia)

Per poter utilizzare PHP con il database MySQL (configurazione tipica per le applicazioni web) occorre installare un server web, PHP e MYSQL. L installazione integrata di queste tre componenti non è sempre agevole, per questo motivo sono stati resi disponibili in rete dei kit di installazione integrati (as es. EasyPHP per Windows, MAMP per MAcOS e XAMMP per Linux) http://www.hotscripts.com/php/software_and_servers/ Installation_Kits/ L installazione tipica di PHP è LAMP, che sta per Linux, Apache, MySQL, PHP

Una pagina PHP è un file di testo con estensione.php e contiene: Testo Marcatori HTML Comandi script

In PHP la parte di script può apparire in qualsiasi punto della pagina html e viene delimitato dai delimitatori di script: <?php e?> Ad esempio il comando: <?php $x= ciao?> assegna alla variabile x il valore "ciao".

Quando il web server riceve la richiesta di una pagina con estensione.php sa che la pagina deve essere processata dal modulo PHP. Il risultato della computazione viene tornato al web server che lo restituisce al client. Gli elementi HTML sono passati direttamente al server web mentre le parti di script vengono interpretate dal motore di scripting PHP In un file PHP le parti di script si alternano e si integrano al codice HTML

Browser web Richiede uno script Server web Individua lo script Browser web Fornisce la pagina HTML Genera la pagina HTML Parser del linguaggio Analizza lo script

Le pagine php, come le HTML, risiedono sul web server. Apache ha una cartella predefinita per le pagine HTML/PHP che è htdocs, nella cartella di installazione di apache. Se vogliamo eseguire la pagina miapagina.php dobbiamo quindi copiarla nella cartella htdocs e poi visualizzarla digitando dal browser la URL http://localhost/miapagina.php Nome del server web dove risiede la pagina

I parametri di funzionamento di PHP sono definiti in un apposito file, denominato php.ini che il server web legge ad ogni riavvio In questo file sono definiti alcuni parametri con i valori di default Non è necessario modificare il file per il corretto funzionamento di PHP, i parametri predefiniti generalmente sono sufficienti I parametri riguardano molti degli aspetti di PHP, ad esempio path dei file, uso della sessioni e dei cookie

La pagina deve essere salvata con estensione.php <HTML><HEAD><TITLE>PHP</TITLE></HEAD> <BODY> Il mio nome è: HTML parte statica della pagina <?php $username= chiara ; echo $username;?> </BODY></HTML> Delimitatore di istruzione PHP parte dinamica della pagina

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 denotare l inizio (analogo a <?)?> per delimitare la fine Per visualizzare l output di uno script PHP occorre visualizzare la pagina dal browser digitando la URL del server (ad es. http://localhost/miapagina.php), non aprendo il file direttamente dal browser

<HTML><HEAD><TITLE>Esempio PHP</TITLE></HEAD> <BODY> Questo testo è in HTML <P> <?php echo "questo testo è in PHP ;?> <P> questo testo è ancora in HTML <?php echo "questo testo è ancora in PHP ;?> </BODY></HTML>

L output di uno script viene scritto sulla finestra del browser L istruzione di stampa di PHP è echo (o print) <? echo Ciao ;?> oppure <? echo( Ciao );?> oppure <? print Ciao ;?>

Un testo puo essere scritto sul browser sia da PHP che direttmanete in HTML Ad esempio, questi due pezzi di codice sono equivalenti: <B> <?php echo ciao! ;?> </B> e <?php echo <B>ciao!</B> ;?>

I commenti sono utili per spiegare il cdice scritto (USARLI SPESSO!!!) ma anche per disabilitare temporaneamente una o piu istruzioni. Esistono tre tipi di commenti: /* commento a riga multipla */ // commento a riga singola # commento a riga singola

Le variabili in PHP si denotano con una sequenza di caratteri preceduti dal simbolo $ Lettere MAIUSCOLE e minuscole sono diverse Devono iniziare con una lettera o il carattere sottolineatura (_) possono contenere numeri $miavar $_ENV $var45

Per assegnare un valore ad una variabile si usa il carattere = $miavar=17; $mess= Ciao! ; Le variabili vengono visualizzate dall istruzione echo echo $miavar;

Un tipo è la descrizione del formato della variabile Boolean (TRUE, FALSE) $pagato = FALSE; Integer $count=1; Float, double $miavar=1.456; String $messaggio= benvenuto ; Array $lista=array( primo, secondo ); $lista[1];

L ambito o scope di una variabile in PHP è la pagina stessa: ogni variabile esiste solo per lo script dove è definita, alla fine del processamento della pagina scompare. Questo significa che possono coesistere variabili con lo stesso nome se definite in pagine diverse e che non è possibile usare il valore di una variabile in uno script diverso da dove e stata definita. Le uniche variabili globali permesse sono i superglobalarray, array globali predefiniti che sono visibili da qualsiasi pagina dell applicazione La vecchie versioni di PHP permettevano la definizione esplicita di variabili globali. Nelle versioni attuali (5) le globali sono disattivate di default nel file php.ini con la direttiva register_globals = Off.

Negli script PHP sono disponibili variabili global definite al di fuori dello script, chiamate variabili predefinite (o superglobalarray) Variabili del server, sono definite dal server web e quindi variano a seconda del server usato. Sono definite come l array $_SERVER $_SERVER[ PHP_SELF ] nome dello script corrente, $_SERVER[ SERVER_NAME ] indica il nome del server, $_SERVER[ HTTP_USER_AGENT ] indica il browser che ha inoltrato la richiesta phpinfo() fornisce informazioni sullo stato corrente di PHP, tra cui tutte le variabili predefinite. E utile ad esempio, per vedere se Mysql è installato e viene visto correttamente da PHP

Questa funziona permette di verificare se una variabile è impostata o meno: isset($var); restituisce true se la variabile $var è settata altrimenti false <? $var= Pippo ; $settata=isset($var);?>

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;

Possono essere specificate con virgolette singole oppure doppie Si differenziano: per i caratteri di escape: sequenze speciali di caratteri che hanno una specifica interpretazione, ad esempio \n per new line, \ per virgoletta singola) per l interpretazione delle variabili.

La virgoletta singola produce un output letterale $var= variabile ; $myvar = La mia $var! \n ; print($myvar); produce come output La mia $var!\n

La virgoletta doppia produce un output processato: I caratteri che seguono il backslash vengono tradotti Le variabili vengono valutate $var= variabile ; $myvar = La mia $var! \n ; print($myvar); produce come output La mia variabile!

Le stringhe che contengono un numero nella parte iniziale possono essere convertite in numero Esempio: $stringa= 45 anni ; $num=23; $add = $num + $stringa;

Vediamo alcuni degli operatori di manipolazione di stringhe. Numerosi altri sono disponibili sulla documentazione del linguaggio 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 ==, <, >

<? $str= pippo pluto e paperino ; $n=strlen($str); echo $n;?> Restituirà la lunghezza in caratteri della stringa

PHP supporta cinque operatore numerici Addizione $a + $b; Sottrazione $a - $b; Moltiplicazione $a * $b; Divisione $a / $b; Modulo $a % $b; Incremento $i++ incrementa di 1 Decremento $i-- decrementa di 1

Sono disponibili varie funzioni per reperire la data e ora correnti sul server. Il tempo viene rappresentato come un timestamp che rappresenta i secondi trascorso dall ora zero Unix, 1 gennaio 1970! In PHP abbiamo due funzioni per reperire la data: getdate() che restituisce un array contente data e ora corrente e date( formato ) che restituisce la data nel formato definito. $dataoggi=date( j/m/y ); echo $dataoggi; Visualizzerà 21/Apr/2010

date( formato ) dove formato può contenere Y anno su 4 cifre y anno su 2 cifre n mese numerico m mese numerico su due cifre F mese testuale M mese testuale su tre lettere d giorno del mese su due cifre j giorno del mese w giorno della settimana l giorno della settimana testuale D giorno della settimana su tre lettere H ora su due cifre G ora i minuti s secondi ESEMPIO: date( j/m/y )

<? if (condizione) { istruzioni da eseguire se la condizione è vera } else { istruzioni da eseguire se la condizione è falsa }?> Il risultato di condizione deve essere un valore booleano, quindi una variabile, se essa è booleana, oppure un operatore di confronto tra variabili

$a == $b uguale $a === $b identico (uguale anche il tipo) $a!= $b non uguale $a!== $b non identico $a > $b maggiore $a < $b minore $a >= $b maggiore uguale $a <= $b minore uguale

and è vero se e solo se entrambi gli argomenti sono veri. or è vero solo se uno (o entrambi) degli argomenti è vero.! Negazione. E vero solo se il suo argomento è falso e viceversa xor è vero solo se uno dei due agomenti (ma non entrambi) sono veri. && come and ma con ottimizzazione di valutazione del primo argomento come or con ottimizzazione di valutazione del primo argomento

switch (espressione) { case costante_espressione: istruzione; break; case costante_espressione: istruzione; break;... default: istruzione; } Rappresenta una serie di if annidati

<? switch ($miavar) { case 5: echo Insufficiente"; break; case 10: echo "10 e lode!!"; break; default: echo sufficiente"; }?>

while (espressione) { istruzione } L istruzione viene ripetuta fino a quando l espressione viene valutata a TRUE <? $a=1; while ($a<10) { echo $a; $a++; }?>

do { istruzione } while (espressione); L istruzione viene eseguita prima della valutazione dell espressione, quindi almeno una volta. <? $a=0; do { echo ciclo do-while questo è a: $a ; } while ($a > 0) ;?>

for (espressione1;espressione2;espressione3) { istruzione } Esempio: <? for ($i=0;$i<=10;$i++) { echo $i; }?>