Laboratorio di reti II: PHP

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Laboratorio di reti II: PHP"

Transcript

1 Laboratorio di reti II: PHP Stefano Brocchi 2 marzo, 2009 Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

2 Il PHP Il PHP è un linguaggio di scripting che si può inserire in una pagina HTML permettendo di creare la pagina web dinamicamente come definito nel codice PHP Esistono plugin PHP per numerosi server HTTP che permettono al codice nelle pagine PHP di essere interpretato ed eseguito Quando un client farà quindi richiesta di una pagina PHP, il server eseguirà il codice in essa contenuto ed il suo output, insieme al codice HTML della pagina, verrà restituito all utente PHP è un acronimo ricorsivo per PHP, hypertext preprocessor Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

3 Il PHP Il linguaggio PHP è gratuito, può essere utilizzato anche per fini commerciali senza alcuna spesa ed i plugin e molte librerie sviluppate dagli autori possono essere ottenute liberamente Il PHP è il linguaggio per la creazione di pagine dinamiche più usato nel mondo. La configurazione più classica di un server web è la cosidetta LAMP: Linux, Apache, MySql, PHP Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

4 Il PHP Il codice PHP in una pagina web deve essere delimitato dai simboli <?php e?> Similarmente ad altri linguaggi, ogni istruzione PHP termina con un punto e virgola Per creare output da inserire nella pagina web utilizzare il metodo print() Analogamente si può utilizzare l istruzione echo. Questa non è propriamente un metodo; l istruzione echo stampa sulla pagina la stringa specificata. Messaggi di errore generati da PHP vengono generalmente scritti su file di log gestiti dal server Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

5 Hello world in PHP Vediamo il codice di una semplice pagina PHP: <html> <head> <title>hello World in PHP<title> </head> <body> <center> <?php echo "<h1>hello World!</h1>";?> </center> </body> </html> Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

6 Variabili in PHP Il PHP Variabili PHP e weak typing Le variabili in PHP sono identificate da stringhe che iniziano con il simbolo $ Il linguaggio PHP si dice weak typed: questo vuol dire che non ci sono controlli statici sulle variabili. Si possono utilizzare variabili non dichiarate o cambiare tipo ad una variabile senza generare errori <?php $a = 10; $b = "stringa"; $a = $b; echo $a; // Stampato nell HTML: stringa?> Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

7 Variabili PHP e weak typing Problemi del weak typing Il weak typing può essere comodo in quanto ci permette di risparmiare diverso codice, ma può anche essere causa di numerosi errori piuttosto insidiosi. Il seguente codice per esempio ciclerebbe all infinito: <?php $mioindice = 0; while ($mioindice < 10) {... $mioidnice = $mioindice + 1; }?> L errore è dato dall errore di battitura $mioidnice al posto di $mioindice; l interprete PHP in questo caso crea una nuova variabile $mioidnice e non aggiorna il contatore del ciclo Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

8 Problemi del weak typing Il PHP Variabili PHP e weak typing Essendo anche le varie operazioni e funzioni definite per tipi generici, i risultati per tipi diversi da quelli attesi possono essere piuttosto insoliti Per fare un esempio, l operatore + se applicato a stringhe, per poter fare la somma converte queste ad interi scartando i caratteri a partire dal primo che non rappresenta una cifra <?php $var = 8; $var2 = "12 giorni"; $var3 = "giorni 12"; echo $var + $var2; // 20 echo "<br>"; echo $var + $var3; // 8 echo "<br>"; echo $var + $var4; // 8?> Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

9 Variabili PHP e weak typing Funzioni PHP per la gestione di variabili Per la manipolazione di variabili esistono diverse funzioni tra cui isset() che restituisce true se la variabile è stata definita unset() che impone che una determinata variabile risulti indefinita var dump() che stampa informazioni dettagliate (per variabili semplici tipo e valore) sulla variabile passata Tutte le precedenti possono essere applicate ad un qualsiasi numero di argomenti Per determinare il tipo di una variabile esistono funzioni come is int() o is string(). Inoltre il metodo gettype() restituisce il tipo della variabile come una stringa Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

10 Costrutti e strutture di base Operatori Gli operatori aritmetici PHP hanno sostanzialmente la stessa sintassi che in Java, e sono +, -, +, /, % (modulo), ++ (incremento) e - - (decremento) Come in altri linguaggi, è possibile usare la notazione per gli assegnamenti $var op=...; Es. $var -= $var2; Come in Java anche gli operatori logici: && (and), (or) e! (not) Commenti inseribili tramite // se su un unica riga o con la sintassi /* commento */ Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

11 Costrutti e strutture di base If, while e for Le sintassi degli operatori if, while e for seguono nuovamente la solita sintassi Java Un esempio che stampa un conto alla rovescia: <?php for ($i = 10; $i >= 0; $i --) { echo $i; echo "<br>"; }?> Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

12 Array in PHP Vettori Un vettore in PHP può essere definito con la sintassi $var = array( elemento0, elemento1,... ) Grazie al weak typing è possibile mescolare in un unico vettore elementi di tipo diverso I vettori in PHP sono inoltre dinamici, ed è possibile aggiungere elementi anche oltre gli indici di definizione del vettore Grazie alla sintassi $vettore[] = elemento è possibile aggiungere un elemento nella prima posizione libera Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

13 Array in PHP Vettori Un esempio di utilizzo di vettori: <?php $a = array("zero ", 1, " due "); echo $a[0]; echo $a[1]; echo $a[2]; $a[3] = "tre "; echo $a[3]; $a[] = 4; echo $a[4];?> L output sarà zero 1 due tre 4 Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

14 Array in PHP Vettori Un altra caratteristica utile dei vettori in PHP è la possibilità di definire degli indici non numerici ma in forma di stringa Per specificare un vettore con determinati valori associati a determinate chiavi, utilizzare la sintassi $array = array(chiave1 => elemento1, chiave2 => elemento2,...) Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

15 Vettori Il PHP Array in PHP Un esempio: <?php $a = array(0 => "zero ", "uno" => 1); echo $a[0]; echo $a["uno"]; echo $a[1]; // Nessun output: a[1] non definito $a["due"] = " due"; echo $a["due"];?> L output sarà zero 1 due Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

16 Array in PHP Vettori Per scorrere comodamente gli elementi di un vettore esiste l istruzione foreach Con foreach si specifica di ciclare una volta per ogni valore nel vettore La sintassi è la seguente: foreach ($array as [$key =>] $value)... Array rappresenta l array da scorrere, value il valore dei suoi elementi e key, se specificato, il valore delle sue chiavi Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

17 Array in PHP Vettori Un esempio dell uso di foreach: <?php $a = array("key" => "value", 2 => "value2"); foreach ($a as $key => $value) { echo $key; echo " = "; echo $value; echo "; "; }?> L output sarà key = value; 2 = value2; Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

18 Stringhe ed apici Il PHP Stringhe ed apici In PHP le stringhe possono essere limitate dai due tipi di apici: oppure La differenza tra i due è che con i doppi apici le variabili all interno della stringa vengono interpretate con il loro valore $var = Valore ; echo $var ; // Output: $var echo "$var"; // Output: Valore All interno di una stringa delimitata da un tipo di apice si può inserire l altro tipo di apice senza caratteri di escape Questo è comodo quando dobbiamo inserire apici nell HTML: echo <body bgcolor="green"> ; Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

19 Stringhe ed apici Il PHP Stringhe ed apici L operatore di concatenazione in PHP è il punto (.) Es. echo "La variabile a ha valore ".$a."<br>"; Sono a disposizione per le stringhe i soliti caratteri di escape come \n per newline E utile inserire degli a capo nella pagina in modo da produrre codice HTML leggibile dal programmatore, consentendo una più facile risoluzione dei problemi se ci sono errori nella pagina creata Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

20 Importazione di file esterni Importazione di file esterni In PHP si possono importare file esterni tramite la funzione include nomefile Es. include head.php ; Quando viene incontrata un istruzione include, PHP si comporta come se il codice presente nel file indicato si trovasse al posto dell istruzione include Il file indicato viene trattato come se fosse all esterno di tag <?php...?>. Se in questo file si vuole specificare codice php sarà necessario riaprire il tag di delimitazione Utilizzare file esterni per definire funzioni che vengono utilizzate in più pagine, in modo da mantenere la modularità Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

21 Importazione di file esterni Altre funzioni di importazione Per l importazione di file si può utilizzare la funzione require L effetto è identico a quello di include con l unica differenza che, in caso di errore nel caricare il file, require causa la terminazione dell esecuzione Esistono inoltre le funzioni include once e require once che includono il file specificato solo se questo non è stato incluso precedentemente Queste sono utili per file che definiscono delle funzioni o delle variabili, in quanto si evita così di dare più definizioni per la stessa entità causando potenzialmente dei problemi Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

22 Definizione di funzioni Definire funzioni In PHP possono essere definite delle funzioni tramite la sintassi function nomefunzione (parametri) { corpo } Es. function resto($dividendo, $divisore) {...} Essendo PHP weak-typed, non occorre specificare il tipo di parametri in ingresso, anche se può essere utile indicare che tipo è atteso nella documentazione del codice Ogni funzione può ritornare una variabile, anche se questo non è specificato nella sua dichiarazione. L istruzione per la restituzione di valore è, come in Java, return Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

23 Visibilità delle variabili Il PHP Definizione di funzioni Normalmente, all interno di una funzione le variabili definite esternamente non sono visibili. Un esempio di codice: $a = 1; function f() { echo 3 + $a; // $a non definito if f() } f(); // Output: 3 Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

24 Definizione di funzioni Visibilità delle variabili Per specificare che una variabile fa riferimento all ambiente esterno alla funzione, utilizzare l istruzione global: $a = 1; function f() { global $a; echo 3 + $a; // $a = 1 } f(); // Output: 4 Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

25 Oggetti in PHP Oggetti in PHP A partire dal PHP 5 è stato introdotto nel linguaggio il supporto degli oggetti Per garantire comunque la retro compatibilità con le versioni precedenti, gli oggetti risultano essere una funzionalità aggiuntiva e non l entità di base come in altri linguaggi I controlli sulla correttezza dell uso dei vari oggetti sono molto limitati, coerentemente alla politica del weak-typing Ad esempio la chiamata ad un metodo inesistente di un oggetto non genera alcun tipo di errore a tempo di compilazione Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

26 Oggetti in PHP Il PHP Oggetti in PHP La definizione di una classe avviene tramite la sintassi class nomeclasse { corpo } La creazione di un oggetto viene fatta tramite la parola chiave new: Es. $a = new obj(); Il costruttore di una classe deve essere definito in un metodo chiamato construct() Per richiamare metodi di un oggetto utilizzare il simbolo -> Es. $a->metodo(); Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

27 Oggetti in PHP Oggetti in PHP Il simbolo ::, anche detto Paamayim Nekudotayim, serve per definire l accesso a metodi di un oggetto al posto di -> nei seguenti casi: Quando si vuole accedere ad un metodo staticamente, cioè senza un riferimento ad un oggetto della classe dove è definito il metodo In php si può accedere in modo statico anche a metodi non statici; in questo caso qualsiasi campo dell oggetto al quale il metodo fa riferimento risulta indefinito Per accedere a campi costanti (e quindi statici) di una classe definiti tramite la parola chiave const Per accedere a metodi dell oggetto padre sovrascritti, tramite la sintassi parent::nomemetodo() Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

28 Oggetti in PHP Oggetti in PHP Altre funzionalità offerte dal php: Definizione di campi e metodi public, private e protected funzionanti esattamente come in Java Variabile $this, rappresentante l oggetto corrente. Se il metodo che fa riferimento a $this è stato richiamato in modo statico, la variabile farà riferimento all oggetto dal quale è stato chiamato il metodo Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

29 Oggetti in PHP Oggetti in PHP Ancora altre funzionalità offerte dal php per gli oggetti: Metodo get class() che restituisce il nome della classe di un oggetto passato come una stringa Parola chiave static, che specifica che un metodo può essere richiamato solo in modo statico Altre keywords per funzionalità del tutto uguali a quelle in Java: extends per l estendibilità, abstract per classi astratte e final per classi e metodi che non possono venir estesi o riscritti Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

30 Esercizio (1) Esercizio (1) Realizzare il sito rappresentante il forum tramite template Creare delle funzioni PHP che generino automaticamente parti dei documenti HTML comuni a più pagine Per esempio, creare funzioni per l intestazione della pagina, per la struttura iniziale e per i vari box Per quanto riguarda le liste di thread o di post in un thread, creare delle funzioni che generino i vari elementi in funzione di un codice identificativo. Per ora ignorare il codice nel corpo della funzione, in seguito questo servirà per ottenere il contenuto richiesto salvato nel database Riportare in dei file esterni, da importare dal codice PHP, i frammenti di codice HTML da utilizzare Mantenere le informazioni sulle liste di link nei vari box in vettori associativi Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

31 Esercizio (1) Esercizio (1) Dopo aver così modularizzato il sito, in un file PHP rappresentante una pagina web dovranno essere presenti solo alcune chiamate a funzioni PHP oltre al contenuto della specifica pagina In questo modo, per creare una nuova pagina sarà sufficiente riutilizzare le stesse funzioni e scrivere soltanto il contenuto che differisce dalle altre pagine Inoltre tramite questa tecnica si può modificare la struttura di tutte le pagine presenti nel sito modificando un unico file HTML rappresentante il template Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

32 Esercizio (1) Esercizio (1) Dopo questa operazione, il codice che realizza il sito viene suddiviso in aree di responsabilità: La grafica rimane nei file CSS La struttura e la logica della pagina viene impostata nel codice PHP Il contenuto statico delle varie pagine viene inserito volta per volta nel codice HTML Si può così lavorare su uno di questi aspetti in modo modulare senza interferire con gli altri due Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

33 Gestione parametri in ingresso Parametri in GET e POST PHP inserisce il contenuto dei parametri passati alla pagina in GET o POST nei vettori $ GET e $ POST In generale le variabili che iniziano con il carattere di underscore ( ) sono variabili riservate da PHP Nei due vettori troveremo come chiavi i nomi dei parametri passati e come valori i loro contenuti Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

34 Gestione parametri in ingresso Parametri in GET e POST Il seguente codice per esempio stampa sulla pagina le chiavi ed i valori dei parametri in GET: <?php if (empty($_get)) { echo "Nessun parametro in GET.<br>\n"; } else { echo "Parametri in GET:<br><br>\n"; foreach ($_GET as $key => $val) { echo $key." = ".$val." <br>\n"; } }?> Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

35 Vettore SERVER Il PHP Gestione parametri in ingresso Un altra variabile predefinita è l array $ SERVER Questa contiene numerose informazione a proposito del server sul quale il codice è in esecuzione e sulla richiesta HTTP inviata. Vediamo di seguito alcuni dei suoi campi: SERVER ADDR e SERVER NAME contengono l indirizzo ed il nome del server HTTP USER AGENT, HTTP ACCEPT ENCODING, HTTP ACCEPT LANGUAGE rappresentano i relativi campi della richiesta HTTP REMOTE ADDR, REMOTE HOST e REMOTE PORT contengono indirizzo, nome e porta del client che ha effettuato la richiesta PHP SELF rappresenta il nome della pagina php richiesta, relativamente al nome dell host Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

36 La funzione header Il PHP Gestire header HTTP La funzione header permette di impostare i parametri della risposta HTTP Visto che l intestazione HTTP deve precedere il contenuto della pagina, la funzione dovrà essere richiamata prima dell invio di qualsiasi output HTML La sintassi della funzione è la seguente: void header ( string $string [, bool $replace [, int $http response code ]]) Il primo parametro rapresenta il valore da impostare nella risposta HTTP nella forma parametro:valore Es. header( Content-language: it ); Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

37 Gestire header HTTP La funzione header Esistono due possibili tipi di valori speciali per il parametro di header Se il parametro inizia con allora verrà impostato il codice di risposta della pagina Es. header("http/ Forbidden"); Se il parametro è nella forma "Location:URL" allora il codice di risposta sarà impostato in modo da richiedere la redirezione all url indicata Es. header("location: destinazione.com/"); In questo caso, è utile accertarsi che altro codice della pagina corrente non venga eseguito. Usare per esempio l istruzione exit che causa la terminazione Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

38 Gestire header HTTP La funzione header Il secondo parametro di header() è un boolean che indica cosa fare nel caso il parametro HTTP specificato abbia già un valore Nel caso sia true, il valore viene sostituito, mentre nel caso sia false il valore viene concatenato a quello già esistente. Questo ha senso in quanto molti parametri HTTP ammettono più valori L ultimo parametro di header() specifica che il codice di risposta HTTP deve essere l intero specificato Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

39 Sessioni Necessità delle sessioni Il protocollo HTTP è stateless: chiudendo una connessione dopo l esecuzione di ogni richiesta non può associare automaticamente due richieste allo stesso client Per poter identificare un utente, viene utilizzato un meccanismo che fa uso di sessioni Una sessione è un astrazione per cui un utente viene riconosciuto come se rimanesse sempre connesso rendendo trasparente la sua disconnessione Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

40 Sessioni Realizzazione delle sessioni Una sessione viene realizzata mandando ad un client un codice identificativo quando questo si connette, e richiedendo che questo sia riinviato al server alla successiva connessione In questo modo il server memorizzerà un numero di identificativi di sessione e ad ogni diverso utente potrà associare variabili persistenti tra una connessione e l altra Per realizzare una sessione e comunicare il codice identificativo si possono usare due strumenti: i parametri per la pagina (GET o POST) oppure i cookie Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

41 Sessioni Realizzazione delle sessioni Un cookie è un piccolo file di testo di cui il server richiede la creazione, specificando un determinato contenuto Quando il client si riconnetterà allo stesso host il browser riinvierà il suo contenuto al server Alternativamente, per gestire le sessioni il server può inviare nella pagina HTML l identificativo come un parametro GET o POST, in modo che questo venga riinviato al server alla successiva connessione Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

42 Sessioni Realizzazione delle sessioni Se il browser accetta cookie, PHP ne fa utilizzo in modo del tutto trasparente per la gestione della sessione Per inizializzare una sessione, sia per la sua creazione che per il recupero di dati inseriti precedentemente, chiamare la funzione session start() Al primo utilizzo di session start() per un determinato utente, verrà richiesta la creazione di un cookie tramite l intestazione HTTP E necessario richiamare session start() prima di aver inviato qualsiasi contenuto della pagina al client, altrimenti l intestazione potrebbe essere già stata inviata Dopo l inizializzazione, si possono salvare e recuperare dati di una sessione tramite l array $ SESSION Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

43 Sessioni Realizzazione delle sessioni Vediamo per esempio una pagina php che conteggia il numero di visite effettuate da ogni utente, nel file count.php <?php session_start(); if (empty($_session[ count ])) { $_SESSION[ count ] = 1; } else { $_SESSION[ count ]++; } echo "Hai visitato questa pagina "; echo $_SESSION[ count ]." volte.<br>";?> Per continuare, <a href= count.php > cliccare qui </a> Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

44 Sessioni Realizzazione delle sessioni Nel caso il browser rifiuti il cookie, PHP inizializza in una stringa nella variabile SID una richiesta GET che identifica la sessione Un esempio di SID potrebbe essere PHPSESSID=pc09bg7qssti0i1keslnt8l9s5 dove PHPSESSID è di default il nome della variabile per l id di sessione. Se il parametro rappresentante l identificativo di sessione viene correttamente passato tramite GET, PHP riconosce automaticamente la sessione che può venir gestita come al solito tramite session start() e $ SESSION Se il browser ha invece accettato il cookie, il SID risulta essere una stringa vuota Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

45 Sessioni Realizzazione delle sessioni Per esempio, il precedente esempio di conteggio delle visite funziona anche senza cookie sostituendo all ultima riga il seguente codice: Per continuare, <?php echo "<a href= count.php?".sid." >";?> cliccare qui </a> Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

46 Sessioni Realizzazione delle sessioni Vediamo ora altre funzioni a disposizione per la gestione delle sessioni: session name() Ritorna una stringa rappresentante il nome del parametro contenente l identificativo di sessione (per default PHPSESSID) session id() Restituisce l identificativo della sessione che deve essere inviato dal client per la sua identificazione. Questo valore viene generato casualmente al momento della creazione di una sessione session destroy() Distrugge la sessione corrente, eliminando tutti i dati in essa contenuti. Da usare per esempio dopo un operazione di logout Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

47 Upload di file Upload di file In HTML è possibile specificare form per l upload di file Impostare per quasto caso l attributo type del tag <input> a file Il browser visualizzerà questo tag come un area di testo con un pulsante per la scelta del file tramite navigazione del filesystem (opzione sfoglia ) Per l invio di file sarà necessario specificare il valore multipart/form-data per l attributo enctype di <form> Un esempio di HTML per l upload: <form enctype="multipart/form-data" action="upload.php" method="post"> <input type="file" name="myfile"> <input type="submit" value="upload"> </form> Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

48 Upload di file Upload di file Si può limitare la dimensione del file inviato in due modi: Specificando un parametro da inviare al server di nome MAX FILE SIZE nel form, con la dimensione massima in byte. Essendo questo parametro riinviato dal client, non è da considerarsi del tutto affidabile Specificando una dimensione massima per i file in upload nel file di configurazione di php php.ini Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

49 Upload di file Upload di file Una volta che viene eseguito con successo un upload, il server avrà una copia del file caricato in una cartella temporanea Le informazioni riguardanti il file si trovano nella variabile globale $ FILES Nel campo $ FILES[nomefile] si trova un vettore contenete nelle seguenti chiavi informazioni sul file caricato: name Il nome del file sul client type Il tipo di file inviato size La dimensione del file in byte tmp name Il nome del file temporaneo corrispondente sul server error Un codice che descrive un eventuale errore nel caricamento Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

50 Upload di file Upload di file A questo punto per trasferire il file nella cartella opportuna si può utilizzare la funzione move uploaded file(string $filename, string $destination) Questa funzione restituisce false se l operazione è fallita o se il file indicato non è un file di upload valido Può essere utile la funzione basename che dato il percorso di un file ne restituisce la parte relativa al nome del file Php mette a disposizione numerose altre funzioni per la manipolazione dei file tra cui copy, delete, readdir e file exists Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

51 Upload di file Upload di file: esempio Vediamo un esempio di gestione dell upload di un file, chiamato myfile nel form HTML e da spostare nella cartella uploadedfiles echo "Nome: ".$_FILES[ myfile ][ name ]."<br>\n"; echo "Tipo: ".$_FILES[ myfile ][ type ]."<br>\n"; echo "Dimensione: ".$_FILES[ myfile ][ size ]. " byte<br>\n"; $uploaddest = "./uploadedfiles/". basename($_files[ myfile ][ name ]); if (move_uploaded_file($_files[ myfile ][ tmp_name ], $uploaddest)) { echo "File caricato correttamente.<br>\n"; } else { echo "Errore: ".$_FILES[ myfile ][ error ]."<br>\n"; } Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

52 Download di file Download di file Per leggere un file da server ed inviare il suo contenuto in output al client si può utilizzare la funzione readfile($filename) E così possibile inviare ad uno specifico client un file che per gli altri non risulta pubblicato in rete Per indicare al client come trattare il file si può specificare il campo Content-type della risposta http Un esempio: header("content-type: application/pdf"); readfile ("../downloads/file.pdf"); exit; Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

53 Download di file Download di file Per imporre che il file specificato venga scaricato e non, per esempio, interpretato dal browser, si può specificare che il campo Content-type abbia valore application/force-download Possibile specificare il nome del file da salvare su disco tramite l header Content-Disposition: filename= nomefile Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

54 Esercizio (2) Esercizio (2) Realizzare il login sul sito del forum Prima di accedere al sito, un utente dovrà fornire un nome utente ed una password validi Per adesso, specificare i dati validi nel codice PHP. La funzione che ne controlla l esattezza verrà modificata per eseguire questo controllo via database Se il login viene effettuato correttamente, verrà creata una sessione che permetterà l accesso al forum Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

55 Esercizio (2) Esercizio (2) All inizio di ogni pagina quindi una funzione dovrà controllare se l utente è autorizzato all accesso, ed in caso contrario non visualizzare la pagina Tramite l opzione di logout, la sessione corrente deve essere distrutta in modo che un altro login sia necessario per ulteriori accessi Stefano Brocchi Laboratorio di reti II: PHP 2 marzo, / 55

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

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

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

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

Manuale Utente Albo Pretorio GA

Manuale Utente Albo Pretorio GA Manuale Utente Albo Pretorio GA IDENTIFICATIVO DOCUMENTO MU_ALBOPRETORIO-GA_1.4 Versione 1.4 Data edizione 04.04.2013 1 TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione delle modifiche apportate

Dettagli

Indice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28

Indice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28 Indice 25 184 Introduzione XI Capitolo 1 Impostazione dell ambiente di sviluppo 2 1.1 Introduzione ai siti Web dinamici 2 1.2 Impostazione dell ambiente di sviluppo 4 1.3 Scaricamento di Apache 6 1.4 Installazione

Dettagli

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per

Dettagli

I file di dati. Unità didattica D1 1

I file di dati. Unità didattica D1 1 I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità

Dettagli

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

LA GESTIONE DELLE VISITE CLIENTI VIA WEB LA GESTIONE DELLE VISITE CLIENTI VIA WEB L applicazione realizzata ha lo scopo di consentire agli agenti l inserimento via web dei dati relativi alle visite effettuate alla clientela. I requisiti informatici

Dettagli

Funzioni in C. Violetta Lonati

Funzioni in C. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni

Dettagli

Java: Compilatore e Interprete

Java: Compilatore e Interprete Java: Compilatore e Interprete Java Virtual Machine Il bytecode non è Linguaggio Macchina. Per diventarlo, deve subire un ulteriore trasformazione che viene operata dall interprete Java in modalità JIT

Dettagli

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto: Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante

Dettagli

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.c Cookies e sessioni. Goy - a.a. 2012/2013 Programmazione Web 1

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.c Cookies e sessioni. Goy - a.a. 2012/2013 Programmazione Web 1 MODULO 1 PARTE 3 Programmazione (scripting) server-side con PHP 3.c Cookies e sessioni Goy - a.a. 2012/2013 Programmazione Web 1 Cookie - I Cookie = variabili che il server salva (*) sul client come file

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

1) GESTIONE DELLE POSTAZIONI REMOTE

1) GESTIONE DELLE POSTAZIONI REMOTE IMPORTAZIONE ESPORTAZIONE DATI VIA FTP Per FTP ( FILE TRANSFER PROTOCOL) si intende il protocollo di internet che permette di trasferire documenti di qualsiasi tipo tra siti differenti. Per l utilizzo

Dettagli

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Manuale Amministratore Legalmail Enterprise Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Pagina 2 di 16 Manuale Amministratore Legalmail Enterprise Introduzione a Legalmail Enterprise...3

Dettagli

CONTENUTI 1. INTRODUZIONE...3 2. CONCETTI BASICI SU EQUINOX CMS XPRESS...5 3. ACCESSO A EQUINOX CMS XPRESS...9 4. PAGINA D INIZIO...

CONTENUTI 1. INTRODUZIONE...3 2. CONCETTI BASICI SU EQUINOX CMS XPRESS...5 3. ACCESSO A EQUINOX CMS XPRESS...9 4. PAGINA D INIZIO... CONTENUTI 1. INTRODUZIONE...3 DEFINIZIONE...3 ELEMENTI DEL SERVIZIO...3 TECNOLOGIA E OPERAZIONE...3 WORKFLOW E GRAFICO DI PROCESSI...4 2. CONCETTI BASICI SU EQUINOX CMS XPRESS...5 STRUTTURA...5 OGGETTI...5

Dettagli

Siti web centrati sui dati (Data-centric web applications)

Siti web centrati sui dati (Data-centric web applications) Siti web centrati sui dati (Data-centric web applications) 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente

Dettagli

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione Automatizzare i compiti ripetitivi I file batch Anno accademico 2000-01 1 Spesso capita di dover eseguire ripetutatmente una data sequenza di comandi Introdurli uno a uno da tastiera è un processo lento

Dettagli

Applicazioni web centrati sui dati (Data-centric web applications)

Applicazioni web centrati sui dati (Data-centric web applications) Applicazioni web centrati sui dati (Data-centric web applications) 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente lo strumento di riferimento

Dettagli

GUIDA ALL USO DEL PANNELLO DI GESTIONE SITO WEB

GUIDA ALL USO DEL PANNELLO DI GESTIONE SITO WEB GUIDA ALL USO DEL PANNELLO DI GESTIONE SITO WEB Copyright 2014 Wolters Kluwer Italia Srl 1 Sommario 1 Come accedere al Pannello di gestione... 4 2 del Pannello di gestione del sito web... 5 3 delle sezioni...

Dettagli

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine. ESERCIZIARIO Risposte ai quesiti: 2.1 Non sono necessarie modifiche. Il nuovo protocollo utilizzerà i servizi forniti da uno dei protocolli di livello trasporto. 2.2 Il server deve essere sempre in esecuzione

Dettagli

Creare un sito Multilingua con Joomla 1.6

Creare un sito Multilingua con Joomla 1.6 Creare un sito Multilingua con Joomla 1.6 Istruzioni Vai a: navigazione, ricerca Testo originale: http://docs.joomla.org/language_switcher_tutorial_for_joomla_1.6 Questa guida è valida sia per Joomla 1.6

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

Cookie. Krishna Tateneni Jost Schenck Traduzione: Luciano Montanaro

Cookie. Krishna Tateneni Jost Schenck Traduzione: Luciano Montanaro Krishna Tateneni Jost Schenck Traduzione: Luciano Montanaro 2 Indice 1 Cookie 4 1.1 Politica............................................ 4 1.2 Gestione........................................... 5 3 1

Dettagli

MANUALE UTENTE. In questo manuale verranno descritte tutte le sue funzioni. Il sistema OTRS è raggiungibile al seguente link:

MANUALE UTENTE. In questo manuale verranno descritte tutte le sue funzioni. Il sistema OTRS è raggiungibile al seguente link: MANUALE UTENTE OTRS è il sistema di ticketing per la gestione delle richieste tecniche e di supporto ai clienti e partner di Delta Progetti 2000. La nuova versione 3.2.10 introduce una grafica più intuitiva

Dettagli

FPf per Windows 3.1. Guida all uso

FPf per Windows 3.1. Guida all uso FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

ICARO Terminal Server per Aprile

ICARO Terminal Server per Aprile ICARO Terminal Server per Aprile Icaro è un software aggiuntivo per Aprile (gestionale per centri estetici e parrucchieri) con funzionalità di terminal server: gira sullo stesso pc dove è installato il

Dettagli

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015 Java:Struttura di Programma Fabio Scanu a.s. 2014/2015 Altre Attenzioni da riservare Java è Case Sensitive: La variabile «a» e la variabile «A» sono diverse Java ha alcune regole di scrittura: I nomi delle

Dettagli

SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l.

SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l. Progetto SITI Manuale Utente SITI-Reports ABACO S.r.l. ABACO S.r.l. C.so Umberto, 43 46100 Mantova (Italy) Tel +39 376 222181 Fax +39 376 222182 www.abacogroup.eu e-mail : info@abacogroup.eu 02/03/2010

Dettagli

PROGRAMMA GESTIONE TURNI MANUALE UTENTE. Programma Gestione Turni Manuale Utente versione 1.1

PROGRAMMA GESTIONE TURNI MANUALE UTENTE. Programma Gestione Turni Manuale Utente versione 1.1 PROGRAMMA GESTIONE TURNI MANUALE UTENTE INDICE 1 PREMESSA 3 2 COMANDI COMUNI 3 3 SEDI 3 4 FESTIVITÀ 4 5 PERIODI TURNI 4 6 COD. TURNI 6 7 TURNI SPORTIVI 9 8 COD. EQUIPAGGI 9 9 DISPONIBILITÀ 10 10 INDISPONIBILITÀ

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

ImporterONE Export Plugin Magento

ImporterONE Export Plugin Magento ImporterONE Export Plugin Magento Indice generale 1 INTRODUZIONE...2 2 INSTALLAZIONE DEL PLUGIN...2 3 CONFIGURAZIONE...4 4 OPERAZIONI PRELIMINARI...11 1-10 1 INTRODUZIONE Questo plugin di esportazione

Dettagli

Manuale Utente Amministrazione Trasparente GA

Manuale Utente Amministrazione Trasparente GA Manuale Utente GA IDENTIFICATIVO DOCUMENTO MU_AMMINISTRAZIONETRASPARENTE-GA_1.0 Versione 1.0 Data edizione 03.05.2013 1 Albo Pretorio On Line TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione

Dettagli

FtpZone Guida all uso Versione 2.1

FtpZone Guida all uso Versione 2.1 FtpZone Guida all uso Versione 2.1 La presente guida ha l obiettivo di spiegare le modalità di utilizzo del servizio FtpZone fornito da E-Mind Srl. All attivazione del servizio E-Mind fornirà solamente

Dettagli

Programmazione Web. Laboratorio 4: PHP e MySQL

Programmazione Web. Laboratorio 4: PHP e MySQL Programmazione Web Laboratorio 4: PHP e MySQL Lavagna elettronica (I) Un unità aziendale di decision making opera per le decisioni di tipo consueto e ripetitivo tramite la procedura seguente: un qualsiasi

Dettagli

Introduzione alla programmazione in C

Introduzione alla programmazione in C Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale

Dettagli

Procedura SMS. Manuale Utente

Procedura SMS. Manuale Utente Procedura SMS Manuale Utente INDICE: 1 ACCESSO... 4 1.1 Messaggio di benvenuto... 4 2 UTENTI...4 2.1 Gestione utenti (utente di Livello 2)... 4 2.1.1 Creazione nuovo utente... 4 2.1.2 Modifica dati utente...

Dettagli

Esercizi di JavaScript

Esercizi di JavaScript Esercizi di JavaScript JavaScript JavaScript é un linguaggio di programmazione interpretato e leggero, creato dalla Netscape. E' presente a patire da Netscape 2 in tutti i browser ed é dunque il linguaggio

Dettagli

costruttori e distruttori

costruttori e distruttori costruttori e distruttori Costruttore E un metodo che ha lo stesso nome della classe a cui appartiene: serve per inizializzare un oggetto all atto della sua creazione Ce ne possono essere uno, più di uno,

Dettagli

Protocolli applicativi: FTP

Protocolli applicativi: FTP Protocolli applicativi: FTP FTP: File Transfer Protocol. Implementa un meccanismo per il trasferimento di file tra due host. Prevede l accesso interattivo al file system remoto; Prevede un autenticazione

Dettagli

ESERCITAZIONE Semplice creazione di un sito Internet

ESERCITAZIONE Semplice creazione di un sito Internet ESERCITAZIONE Semplice creazione di un sito Internet Sistemi e Tecnologie Informatiche - Prof. Gregorio Cosentino 1 Internet Una rete globale che connette milioni di computer in tutto il mondo, anarchica

Dettagli

SIRTEL. Sistema Informativo per la Rendicontazione Telematica degli Enti Locali. Schema di funzionamento del processo per l Ente Locale

SIRTEL. Sistema Informativo per la Rendicontazione Telematica degli Enti Locali. Schema di funzionamento del processo per l Ente Locale SIRTEL Sistema Informativo per la Rendicontazione Telematica degli Enti Locali Schema di funzionamento del processo per l Ente Locale Sommario del documento Acronimi...3 FASE 1: REGISTRAZIONE ED ABILITAZIONE

Dettagli

Inizializzazione, Assegnamento e Distruzione di Classi

Inizializzazione, Assegnamento e Distruzione di Classi Inizializzazione, Assegnamento e Distruzione di Classi Lezione 9 Operazioni Automatiche In ogni programma C++ oggetti classe vengono gestiti automaticamente dal compilatore Inizializzati al momento della

Dettagli

MANUALE PARCELLA FACILE PLUS INDICE

MANUALE PARCELLA FACILE PLUS INDICE MANUALE PARCELLA FACILE PLUS INDICE Gestione Archivi 2 Configurazioni iniziali 3 Anagrafiche 4 Creazione prestazioni e distinta base 7 Documenti 9 Agenda lavori 12 Statistiche 13 GESTIONE ARCHIVI Nella

Dettagli

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Autore: Prof. Agostino Sorbara ITIS "M. M.

Dettagli

A tal fine il presente documento si compone di tre distinte sezioni:

A tal fine il presente documento si compone di tre distinte sezioni: Guida on-line all adempimento Questa guida vuole essere un supporto per le pubbliche amministrazioni, nella compilazione e nella successiva pubblicazione dei dati riguardanti i dirigenti sui siti istituzionali

Dettagli

PORTALE CLIENTI Manuale utente

PORTALE CLIENTI Manuale utente PORTALE CLIENTI Manuale utente Sommario 1. Accesso al portale 2. Home Page e login 3. Area riservata 4. Pagina dettaglio procedura 5. Pagina dettaglio programma 6. Installazione dei programmi Sistema operativo

Dettagli

A tal fine il presente documento si compone di tre distinte sezioni:

A tal fine il presente documento si compone di tre distinte sezioni: Guida on-line all adempimento Questa guida vuole essere un supporto per le pubbliche amministrazioni, nella compilazione e nella successiva pubblicazione dei dati riguardanti i dirigenti sui siti istituzionali

Dettagli

Javascript: il browser

Javascript: il browser Javascript: il browser Un browser è un programma Un browser interpreta il linguaggio HTML e visualizza le pagine sullo schermo Per la visualizzazione delle pagine un browser si appoggia al software di

Dettagli

6 BILANCI E NOTA INTEGRATIVA

6 BILANCI E NOTA INTEGRATIVA Bollettino 5.00-265 6 BILANCI E NOTA INTEGRATIVA 6.1 [5.00\ 22] Il bilancio in formato XBRL 6.1.1 Normativa Il DPCM del 10 dicembre 2008 - Specifiche tecniche del formato elettronico elaborabile (XBRL)

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

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Laboratorio Progettazione Web PHP e FORMs HTML Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Struttura Applicazioni Web Browser Web HTTP Server Web API Dati Presentation Application Storage

Dettagli

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito) Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito) Le seguenti istruzioni sono relative all installazione di IBM SPSS Modeler Text Analytics versione 15 mediante un licenza

Dettagli

URI. Introduzione. Pag. 1

URI. Introduzione. Pag. 1 URI Introduzione Gli URI (Universal Resource Indentifier) sono una sintassi usata in WWW per definire i nomi e gli indirizzi di oggetti (risorse) su Internet. Questi oggetti sono considerati accessibili

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

Standard Nazionale di Comunicazione Mercato Gas

Standard Nazionale di Comunicazione Mercato Gas JULIA RETE s.u.r.l. - Società unipersonale a responsabilità limitata Soggetta a direzione e coordinamento del Comune di Giulianova Sede legale: 64021 Giulianova (TE) Corso Garibaldi, 119 Sede operativa:

Dettagli

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE PREMESSA La presente guida è da considerarsi come aiuto per l utente per l installazione e configurazione di Atollo Backup. La guida non vuole approfondire

Dettagli

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template. I TEMI PREDEFINITI (TEMPLATE) Scelta del tema I temi predefiniti di wordpress sono la base di un sito che usa un utente che per ragioni pratiche o per incapacità non può creare un sito usando solo codice

Dettagli

CONTENT MANAGEMENT SY STEM

CONTENT MANAGEMENT SY STEM CONTENT MANAGEMENT SY STEM I NDI CE I NTRODUZI ONE Accesso al CMS 1) CONTENUTI 1.1 I nserimento, modifica e cancellazione dei contenuti 1.2 Sezioni, categorie e sottocategorie 2) UTENTI 3) UP LOAD FILES

Dettagli

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page»

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page» Scaletta Estensioni UML per il Web Michele Zennaro 14-05-2004 Le applicazioni web Scopo di un estensione UML per il web Due punti di vista Uno più astratto Uno più vicino ai file fisici conclusivo Commenti

Dettagli

Capitolo 4 Pianificazione e Sviluppo di Web Part

Capitolo 4 Pianificazione e Sviluppo di Web Part Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,

Dettagli

GERARCHIE RICORSIVE - SQL SERVER 2008

GERARCHIE RICORSIVE - SQL SERVER 2008 GERARCHIE RICORSIVE - SQL SERVER 2008 DISPENSE http://dbgroup.unimo.it/sia/gerarchiericorsive/ L obiettivo è quello di realizzare la tabella di navigazione tramite una query ricorsiva utilizzando SQL SERVER

Dettagli

LABORATORIO PER IL DESIGN DELLE INTERFACCE PEGORARO ALESSANDRO CASSERO.IT MANUALE DI AGGIORNAMENTO, MANUTENZIONE E USO DEL SITO

LABORATORIO PER IL DESIGN DELLE INTERFACCE PEGORARO ALESSANDRO CASSERO.IT MANUALE DI AGGIORNAMENTO, MANUTENZIONE E USO DEL SITO CASSERO.IT MANUALE DI AGGIORNAMENTO, MANUTENZIONE E USO DEL SITO 1 Installazione e requisiti per il corretto funzionamento del sito: L istallazione è possibile sui più diffusi sistemi operativi. Il pacchetto

Dettagli

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 PAG. 2 DI 38 INDICE 1. PREMESSA 3 2. SCARICO DEL SOFTWARE 4 2.1 AMBIENTE WINDOWS 5 2.2 AMBIENTE MACINTOSH 6 2.3 AMBIENTE

Dettagli

Integrazione InfiniteCRM - MailUp

Integrazione InfiniteCRM - MailUp Integrazione InfiniteCRM - MailUp La funzionalità della gestione delle campagne marketing di icrm è stata arricchita con la spedizione di email attraverso l integrazione con la piattaforma MailUp. Creando

Dettagli

FtpZone Guida all uso

FtpZone Guida all uso FtpZone Guida all uso La presente guida ha l obiettivo di spiegare le modalità di utilizzo del servizio FtpZone fornito da E-Mind Srl. All attivazione del servizio E-Mind fornirà solamente un login e password

Dettagli

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo Direzione Centrale per le Politiche dell Immigrazione e dell Asilo Sistema inoltro telematico domande di nulla osta, ricongiungimento e conversioni Manuale utente Versione 2 Data creazione 02/11/2007 12.14.00

Dettagli

Access. P a r t e p r i m a

Access. P a r t e p r i m a Access P a r t e p r i m a 1 Esempio di gestione di database con MS Access 2 Cosa è Access? Access e un DBMS che permette di progettare e utilizzare DB relazionali Un DB Access e basato sui concetti di

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

MANUALE D USO DELLA PIATTAFORMA ITCMS

MANUALE D USO DELLA PIATTAFORMA ITCMS MANUALE D USO DELLA PIATTAFORMA ITCMS MANULE D USO INDICE 1. INTRODUZIONE... 2 2. ACCEDERE ALLA GESTIONE DEI CONTENUTI... 3 3. GESTIONE DEI CONTENUTI DI TIPO TESTUALE... 4 3.1 Editor... 4 3.2 Import di

Dettagli

Outlook Plugin per VTECRM

Outlook Plugin per VTECRM Outlook Plugin per VTECRM MANUALE UTENTE Sommario Capitolo 1: Installazione e Login... 2 1 Requisiti di installazione... 2 2 Installazione... 3 3 Primo Login... 4 Capitolo 2: Lavorare con Outlook Plugin...

Dettagli

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo Come funziona il WWW Il funzionamento del World Wide Web non differisce molto da quello delle altre applicazioni Internet Anche in questo caso il sistema si basa su una interazione tra un computer client

Dettagli

TRASMISSIONE REPORTISTICA MENSILE. WEB SERVICE Descrizione procedura

TRASMISSIONE REPORTISTICA MENSILE. WEB SERVICE Descrizione procedura TRASMISSIONE REPORTISTICA MENSILE Indice 1. DESCRIZIONE... 3 2. METODI... 4 3. IL FILE XML... 6 3.1 Descrizione contenuti del file... 7 4. COME IMMETTERE I DATI SE NON CI SONO STATE VALUTAZIONI... 12 5.

Dettagli

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress.

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress. ESERCIZIARIO Risposte ai quesiti: 10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress. 10.2. Un numero intero in Java è compreso nell'intervallo ( 2 31 ) e (2 31

Dettagli

FOXWave 1.0.0 Gestione gare ARDF IZ1FAL Secco Marco Sezione ARI BIELLA

FOXWave 1.0.0 Gestione gare ARDF IZ1FAL Secco Marco Sezione ARI BIELLA FOXWave 1.0.0 Gestione gare ARDF IZ1FAL Secco Marco Sezione ARI BIELLA Redatto da IZ1FAL Secco Marco Pagina 1 di 15 INDICE 1 1- INSTALLAZIONE... 3 1-1 Scaricare i pacchetti aggiornati... 3 1-2 Startup

Dettagli

Manuale LiveBox WEB ADMIN. http://www.liveboxcloud.com

Manuale LiveBox WEB ADMIN. http://www.liveboxcloud.com 2014 Manuale LiveBox WEB ADMIN http://www.liveboxcloud.com LiveBox Srl non rilascia dichiarazioni o garanzie in merito al contenuto o uso di questa documentazione e declina qualsiasi garanzia espressa

Dettagli

NAVIGAZIONE DEL SI-ERC: UTENTE PROGETTISTA

NAVIGAZIONE DEL SI-ERC: UTENTE PROGETTISTA 3 NAVIGAZIONE DEL SI-ERC: UTENTE PROGETTISTA Collegandosi al sito, si accede alla Home Page del SI-ERC che si presenta come illustrato di seguito. L utente progettista, analogamente agli altri utenti,

Dettagli

Guida Joomla. di: Alessandro Rossi, Flavio Copes

Guida Joomla. di: Alessandro Rossi, Flavio Copes Guida Joomla di: Alessandro Rossi, Flavio Copes Grafica e template 1. 15. La grafica e i template Personalizzare l'aspetto del sito aggiungendo nuovi template e customizzandoli 2. 16. Personalizzare il

Dettagli

TERMINALE. Creazione e gestione di una postazione terminale di Eureka

TERMINALE. Creazione e gestione di una postazione terminale di Eureka TERMINALE Creazione e gestione di una postazione terminale di Eureka Febbraio 2011 2 Creazione e gestione di una postazione terminale di Eureka INDICE POSTAZIONE TERMINALE EUREKA REQUISITI INSTALLAZIONE

Dettagli

Il Protocollo HTTP e la programmazione di estensioni Web

Il Protocollo HTTP e la programmazione di estensioni Web Il Protocollo HTTP e la programmazione di estensioni Web 1 Il protocollo HTTP È il protocollo standard inizialmente ramite il quale i server Web rispondono alle richieste dei client (prevalentemente browser);

Dettagli

Allocazione dinamica della memoria - riepilogo

Allocazione dinamica della memoria - riepilogo Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica In breve Storage duration Allocazione dinamica della

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

Internet Explorer 7. Gestione cookie

Internet Explorer 7. Gestione cookie Internet Explorer 7 Internet Explorer 7 è la nuova versione del browser di Microsoft disponibile per i Sistemi Operativi: Windows Vista, Windows XP (SP2), Windows XP Professional x64 Edition e Windows

Dettagli

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione Airone Gestione Rifiuti Funzioni di Esportazione e Importazione Airone Funzioni di Esportazione Importazione 1 Indice AIRONE GESTIONE RIFIUTI... 1 FUNZIONI DI ESPORTAZIONE E IMPORTAZIONE... 1 INDICE...

Dettagli

Introduzione. Installare EMAS Logo Generator

Introduzione. Installare EMAS Logo Generator EMAS Logo Generator Indice Introduzione... 3 Installare EMAS Logo Generator... 3 Disinstallare EMAS Logo Generator... 4 Schermata iniziale... 5 Creare il Logo... 7 Impostazioni... 7 Colore...8 Lingua del

Dettagli

PRODUZIONE PAGELLE IN FORMATO PDF

PRODUZIONE PAGELLE IN FORMATO PDF Requisiti minimi: PRODUZIONE, FIRMA E PUBBLICAZIONE DELLA PAGELLA ELETTRONICA CON ALUNNI WINDOWS PRODUZIONE PAGELLE IN FORMATO PDF Argo Alunni Windows aggiornato alla versione più recente. Adobe PDF CREATOR,

Dettagli

Guida al FileManager online - Vista

Guida al FileManager online - Vista 1 Cosʼè il FileManager? Il FileManager di Vista Srl è realizzato per ricevere ed inviare files come fosse un sistema FTP online gestibile interamente via Browser web (come Safari, Firefox, Chrome etc.)

Dettagli

Cookie e Webstorage. Vediamo ora i metodi dell oggetto localstorage. Per memorizzare un valore si utilizza il metodo setitem:

Cookie e Webstorage. Vediamo ora i metodi dell oggetto localstorage. Per memorizzare un valore si utilizza il metodo setitem: Cookie e Webstorage Un cookie (letteralmente biscotto) è un pacchetto di informazioni che viene salvato sul computer dell utente. In successive sessioni di collegamento a Internet (normalmente per un periodo

Dettagli

Bibliografia: Utenti e sessioni

Bibliografia: Utenti e sessioni Bibliografia: Utenti e sessioni http: protocollo stateless http si appoggia su una connessione tcp e lo scambio nel contesto di una connessione si limita a invio della richiesta, ricezione della risposta.

Dettagli

Reti di Calcolatori. Il Livello delle Applicazioni

Reti di Calcolatori. Il Livello delle Applicazioni Reti di Calcolatori Il Livello delle Applicazioni Il DNS Gli indirizzi IP sono in formato numerico: sono difficili da ricordare; Ricordare delle stringhe di testo è sicuramente molto più semplice; Il Domain

Dettagli

Il sofware è inoltre completato da una funzione di calendario che consente di impostare in modo semplice ed intuitivo i vari appuntamenti.

Il sofware è inoltre completato da una funzione di calendario che consente di impostare in modo semplice ed intuitivo i vari appuntamenti. SH.MedicalStudio Presentazione SH.MedicalStudio è un software per la gestione degli studi medici. Consente di gestire un archivio Pazienti, con tutti i documenti necessari ad avere un quadro clinico completo

Dettagli

Mac Application Manager 1.3 (SOLO PER TIGER)

Mac Application Manager 1.3 (SOLO PER TIGER) Mac Application Manager 1.3 (SOLO PER TIGER) MacApplicationManager ha lo scopo di raccogliere in maniera centralizzata le informazioni piu salienti dei nostri Mac in rete e di associare a ciascun Mac i

Dettagli

Progettazione Web Applicazioni client-server

Progettazione Web Applicazioni client-server Progettazione Web Applicazioni client-server Sviluppo di un'applicazione Web integrando: HTML MySQL PHP Apache Applicativi utilizzabili: gestione database: JDER, MySQL Workbench, HeidiSQL (Win), DBeaver

Dettagli

Modulo 4: Ereditarietà, interfacce e clonazione

Modulo 4: Ereditarietà, interfacce e clonazione Modulo 4: Ereditarietà, interfacce e clonazione Argomenti Trattati: Classi, Superclassi e Sottoclassi Ereditarietà Ereditarietà ed Attributi Privati Override super Ereditarietà e Costruttori Polimorfismo

Dettagli

Standard Nazionale di Comunicazione Mercato Gas

Standard Nazionale di Comunicazione Mercato Gas JULIA RETE s.u.r.l. - Società unipersonale a responsabilità limitata Soggetta a direzione e coordinamento del Comune di Giulianova Sede legale: 64021 Giulianova (TE) Corso Garibaldi, 119 Sede operativa:

Dettagli

1 Progetto di laboratorio di reti I

1 Progetto di laboratorio di reti I 1 Progetto di laboratorio di reti I In questo documento sono descritte le specifiche per la realizzazione del progetto. Vedremo innanzitutto le caratteristiche richieste nel codice e nella relazione, per

Dettagli

Manuale di istruzioni sulle maschere per il calcolo del punteggio e del voto (unico) degli studenti che sostengono la Prova nazionale 2011

Manuale di istruzioni sulle maschere per il calcolo del punteggio e del voto (unico) degli studenti che sostengono la Prova nazionale 2011 Manuale di istruzioni sulle maschere per il calcolo del punteggio e del voto (unico) degli studenti che sostengono la Prova nazionale 2011 (CLASSI NON CAMPIONE) Prova nazionale 2010 11 1 A.S. 2010 11 Pubblicato

Dettagli

GUIDA ALL UTILIZZO DEL PORTALE DELLA RETE DEI COMUNI OGLIO PO

GUIDA ALL UTILIZZO DEL PORTALE DELLA RETE DEI COMUNI OGLIO PO GUIDA ALL UTILIZZO DEL PORTALE DELLA RETE DEI COMUNI OGLIO PO Il portale della Rete dei Comuni Oglio Po risponde all url: http://www.comuniogliopo.it Il portale è un contenitore per i siti comunali degli

Dettagli