Architettura a tre livelli (1)

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Architettura a tre livelli (1)"

Transcript

1 Elaborazione Automatica dei Dati Php e MySQL Enrico Cavalli Anno Accademico Architettura a tre livelli (1) Le applicazioni sono sviluppate secondo una architettura a tre livelli, affermatasi con Internet. In questo contesto: il client dell applicazione ( livello 1 ) è un semplice browser che richiede pagine a un server web Il server web ( livello 2 ) costituisce il server dell applicazione e interagisce con il server del database Il database server ( livello 3 ) accede al database per recuperare i dati richiesti dal client Vantaggi Stazioni di lavoro leggere, dotate solo di un browser Possibilità di operare da qualsiasi macchina dotata di un browser La distribuzione dell applicazione è semplificata La manutenzione dell applicazione è semplificata (ogni cambiamento nel software applicativo avviene sul solo server) Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 2 Architettura a tre livelli (2) Si vogliono sviluppare applicazioni per permettere a utenti inesperti di accedere al database di una applicazione Non è pensabile che accedano al database con comandi SQL Vedono e modificano i dati tramite maschere Oltre a sapere dialogare interattivamente con MySQL e saper sviluppare pagine web dinamiche con Php, bisogna imparare a: Ricevere le richieste dell utente tramite parametri Assegnare il valore dei parametri a variabili php di uno script Sviluppare script in base alle richieste ricevute Sviluppare script che interrogano o modificano un database Sviluppare script per inviare all utente le informazioni richieste Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 3 1

2 Architettura a tre livelli (3) Server Web 5 3 Php 4 Server MySQL DB 1. Il browser richiede una pagina Web dinamica 2. Il Web server riconosce nella richiesta un file con estensione.php e quindi attiva l interprete Php per eseguire gli script in esso contenuti 3. Lo script Php contiene i comandi per collegarsi al database MySQL e inviare le richieste tramite comandi in SQL 4. Il Server MySQL restituisce i dati richiesti 5. Lo script Php scrive i dati in una pagina Web e la restituisce al Web Server 6. Il Web Server invia al browser la pagina richiesta in formato HTML Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 4 Database utilizzato Il database Alimentari raccoglie gli ordini di prodotti alimentari. Prodotto N Includere N Ordine IDProdotto {PK Descrizione Reparto Prezzo Numero{PK Quantità IDOrdine Data Cliente {PK Prodotti( IDProdotto, Descrizione, Categoria, Prezzo ) Ordini( IDOrdine, Data, Cliente) RigheOrdine( Numero, Quantita, IDProdotto, IDOrdine ) Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 5 Metodi Get e Post (1) Pagina inviata dal web server al browser. Contiene il nome dello script di risposta Pagina visualizzata dal browser Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 6 2

3 Metodi Get e Post (2) Con il metodo GET i parametri sono trasmessi al server nell URL della pagina richiesta e sono visibili nella pagina di risposta Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 7 Metodi Get e Post (3) Quando il browser richiama lo script di risposta costruisce per ogni parametro del modulo una coppia NomeParametro=Valore ( nome=gianfranco, cognome=farinoni ) che invia con la modalità GET o la modalità POST GET: i parametri sono codificati come parte dell indirizzo e sono visualizzati insieme all URL della pagina Web. Il nome è case sensitive modalità non adatta alla trasmissione di dati riservati modalità non adatta alla trasmissione di campi di grande dimensione Php: salvati nell array associativo $_GET $_GET[ nome ] $_GET[ cognome ] POST: i parametri sono trasmessi in un canale riservato con una modalità che li rende invisibili all utente modalità non adatta per le pagine che si vogliono salvare nei bookmarks Php: salvati nell array associativo $_POST $_POST[ nome ] $_POST[ cognome ] Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 8 Metodi Get e Post (4) Un altro modo di passare parametri ad una pagina Php consiste nel richiamare la pagina aggiungendo i parametri al suo indirizzo spazi o caratteri speciali nei nomi o nei valori spazi +, caratteri speciali %hh indirizzo=via Monte Rosa 12/a indirizzo=via+monte+rosa+12%2fa I parametri sono trasmessi nell array $_GET. Se manca un parametro Php segnala un errore al momento del recupero del valore mancante. Usare isset( ) per identificare queste situazioni e fornire eventuali valori di default $matr = $_GET[ matr ]; $corso = $_GET[ corso ]; If (isset($_get[ matr ])) if (isset($_get[ corso ])) $matr = $_GET[ matr ]; $corso = $_GET[ corso ]; else else $matr = mancante ; $corso = 0001; Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 9 3

4 Operazioni sul database (1) Connessione.php $hostname = "localhost"; $username = "root"; $password = ""; //---- Apertura della connessione con il server MySQL $conn = mysql_connect($hostname, $username, $password); if (! $conn ) { echo "Errore durante la connessione a MySQL."; exit(); else { echo ("Connessione a MySQL effettuata con successo."); // ---- Selezione di un database // ---- Operazioni sul database // ---- Chiusura della connessione mysql_close( $conn ); $conn è un oggetto che identifica la connessione... Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 10 Operazioni sul database (2) ScegliDatabase.php mysql_select_db() restituisce un valore $conn = mysql_connect("localhost", "root", ""); di verità.. if (! $conn ) { exit("errore durante la connessione a MySQL."); else { echo "Connessione a MySQL effettuata con successo<br>"; // // ---- Scelta di Alimentari come database di default // if (! mysql_select_db("alimentari", $conn) ) { exit("errore nella scelta del database Alimentari"); echo "Selezione riuscita, Alimentari è db di default"; // // ---- Operazioni sul database Alimentari // mysql_close( $conn ); if(!exp1){exp2 exp1 OR exp2 Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 11 Short Circuit Evaluation if(!exp1){exp2 exp1 OR exp2 SCE nel caso di OR $Str = Valore iniziale ; $L1 = True; $L2 = $L1 OR ($Str = 0); // $L2 = $L1 ($Str = 0); echo $L2 vale.$l2; echo $Str vale.$str; $Str = Valore iniziale ; $L1 = False; $L2 = $L1 OR ($Str = 0); // $L2 = $L1 ($Str = 0); echo $L2 vale.$l2; echo $Str vale.$str; Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 12 4

5 Short Circuit Evaluation SCE nel caso di AND $Str = Valore iniziale ; $L1 = True; $L2 = $L1 AND ($Str = 0); // $L1 && ($Str = 0); echo $L2 vale.$l2; echo $Str vale.$str; $Str = Valore iniziale ; $L1 = False; $L2 = $L1 AND ($Str = 0); // $L1 && ($Str = 0); echo $L2 vale.$l2; echo $Str vale.$str; Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 13 Dettagli su espressioni logiche OR versus $Ris = $L1 OR $L2; $Ris = $L1 $L2; ($Ris = $L1) OR $L2; $Ris = ($L1 $L2); /* * Valutare le espressioni per: $L1 = False; $L2 = True; * */ AND versus && $Ris = $L1 AND $L2; $Ris = $L1 && $L2; ($Ris = $L1) AND $L2; $Ris = ($L1 && $L2); /* * Valutare le espressioni per: $L1 = True; $L2 = False; * */ Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 14 Operazioni sul database (3) Le operazioni sul database si eseguono con la funzione mysql_query( ) mysql_query( StringaQuery, Connessione ) StringaQuery contiene il testo del comando SQL che si vuole eseguire (bisogna omettere il ; finale) Connessione specifica il database tramite un identificatore di connessione, per default si considera l ultima connessione stabilita mysql_query() restituisce false in caso di errore, mentre restituisce true, o un puntatore alla risposta all interrogazione, in assenza di errori Esempi basati sulla tabella Clienti: CREATE TABLE Clienti ( IDCliente VARCHAR(10) PRIMARY KEY, Nome VARCHAR(30), Cognome VARCHAR(30) ); Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 15 5

6 CreaClienti.php Operazioni sul database (4) $conn = mysql_connect("localhost", "root", ""); if (! $conn ) exit("errore durante la connessione a MySQL."); echo "Connessione a MySQL effettuata con successo. <BR><HR>"; mysql_select_db("alimentari") or exit("errore db Alimentari"); echo "Alimentari è db di default. <BR><HR>"; // ---- Costruzione del comando SQL $sqlcmd = "CREATE TABLE Clienti(". "IDCliente Varchar(10) PRIMARY KEY,". "Nome Varchar(30),". "Cognome Varchar(30) )"; $conn mancante in: mysql_select_db( ) mysql_query( ) // ---- Esecuzione del comando SQL e fine connessione mysql_query( $sqlcmd ) or exit("errore in creazione Clienti"); echo "Tabella Clienti creata con successo. <BR><HR>"; mysql_close($conn); Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 16 Operazioni sul database (5) /**************************************************************** * Approcci alternativi in caso di errore * * mysql_errno() restituisce il codice di errore oppure 0 * mysql_error() restituisce un messaggio di errore o * la stringa vuota ****************************************************************/ // ---- Esecuzione del comando SQL Visualizzare il mysql_query( $sqlcmd ); comando eseguito if ( mysql_errno() == 0 ){ è una buona echo "Comando eseguito con successo."; prassi else { echo "Errore nel comando: <BR> $sqlcmd <BR>"; echo mysql_error(); Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 17 InserisciCliente.php Operazioni sul database (6) // ---- apertura della connessione con MySQL su Alimentari $idcliente = "farigian"; $nome = "Gianfranco"; $cognome = "Farinoni"; // ---- Costruzione del comando INSERT $sqlcmd = "INSERT INTO Clienti VALUES "; $sqlcmd.= "('$idcliente','$nome','$cognome')"; echo "Comando: $sqlcmd <BR>"; mysql_query( $sqlcmd ); if ( mysql_errno()== 0 ) { echo "Comando eseguito con successo."; else { echo "Errore nel comando: ", mysql_error(); // ---- chiusura della connessione Comando: INSERT INTO Clienti VALUES( farigian, Gianfranco, Farinoni ) Comando eseguito con successo Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 18 6

7 ModificaCliente.php Operazioni sul database (7) $idcliente = "farigian"; $nome = "Gian Franco"; // ---- Costruzione del comando UPDATE $sqlcmd = "UPDATE Clienti "; $sqlcmd.= "SET Nome='$nome' "; $sqlcmd.= "WHERE IDCliente='$idcliente'"; echo "Comando: $sqlcmd <BR>"; mysql_affected_rows( ) // ---- Esecuzione del comando e messaggi informativi mysql_query( $sqlcmd ); if ( mysql_errno()== 0 ){ echo "Comando eseguito con successo.<br>"; echo "Numero di righe modificate = ", mysql_affected_rows(); else { echo "Errore nel comando: <BR> $sqlcmd <BR>"; echo mysql_error(); Comando: UPDATE Clienti SET Nome='Gian Franco' WHERE IDCliente='farigian' Comando eseguito con successo. Numero di righe modificate = 1 Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 19 CancellaCliente.php Operazioni sul database (8) // ---- apertura della connessione con MySQL su Alimentari $idcliente = "farigian"; // ---- Costruzione del comando DELETE $sqlcmd = "DELETE FROM Clienti "; $sqlcmd.= "WHERE IDCliente = '$idcliente'"; echo "Comando in esecuzione: $sqlcmd <BR>"; // ---- Esecuzione del comando mysql_query($sqlcmd) or exit("errore nel comando DELETE"); echo "Comando eseguito con successo.<br>"; // ---- chiusura della connessione Comando: DELETE FROM Clienti WHERE IDCliente='farigian' Comando eseguito con successo. Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 20 InserisciOrdine.php Operazioni sul database (9) $data = " "; $cliente = "farigian"; mysql_insert_id( ) // ---- Costruzione del comando INSERT $sqlcmd = "INSERT INTO Ordini VALUES "; $sqlcmd.= "( null, '$data', '$cliente' )"; echo "Comando: $sqlcmd <BR>"; // ---- Esecuzione del comando e messaggi mysql_query( $sqlcmd ); if ( mysql_errno()== 0 ){ $id = mysql_insert_id(); echo "Ordine inserito con successo.<br>"; echo "IDOrdine = $id"; else { echo "Errore nel comando: <BR> $sqlcmd <BR>"; echo mysql_error(); Comando: INSERT INTO Ordini VALUES ( null, ' ', 'farigian' ) Ordine inserito con successo. IDOrdine = 1 Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 21 7

8 Interrogazioni sul database (1) $risultato = mysql_query( SELECT * FROM Ordini ) $risultato: false oppure un oggetto dal quale si estraggono le righe della risposta con mysql_fetch_array( $risultato ) mysql_fetch_array( ) restituisce false oppure la prossima riga in un array associativo Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 22 Interrogazioni sul database (2) E utile pensare a $risultato come alla tabella restituita da SELECT: gli indici dell array associativo $risultato sono i nomi delle colonne della tabella. // ---- attenzione alle colonne quando sono rinominate $sqlcmd = SELECT IDOrdine AS Numero, Data,. Cliente AS CodiceCliente FROM Ordini ; $risultato = mysql_query( $sqlcmd); if (! $risultato) exit( "Errore nel comando SELECT" ); $riga = mysql_fetch_array($risultato); $id = $riga["numero"]; $data = $riga["data"]; $cliente = $riga["codicecliente"];.. Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 23 Interrogazioni sul database (3) /************************************************************** due modi per estrarre tutte le righe dal risultato **************************************************************/ // recupera la prima riga $riga = mysql_fetch_array($risultato); while ($riga) { // Operazioni sulla riga // Estrazione della prossima riga $riga = mysql_fetch_array($risultato); mysql_num_rows( $risultato ) // sapendo quante sono le righe... for ($volte = 0; $volte<mysql_num_rows($risultato); $volte++) { $riga = mysql_fetch_array($risultato); // Operazioni sulla riga Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 24 8

9 Interrogazioni sul database (4) // ---- connessione al database Alimentari $reparto = "alimsur"; // ---- Costruzione del comando SELECT $sqlcmd = "SELECT IDProdotto, Descrizione, Prezzo "; $sqlcmd.= "FROM Prodotti "; $sqlcmd.= "WHERE Reparto = '$reparto' "; echo "Comando SELECT: $sqlcmd <HR Size=4>"; // ---- Interrogazione e gestione dell'errore $risultato = mysql_query( $sqlcmd ); if (! $risultato) exit("errore nell'interrogazione: <BR> $sqlcmd "); // ---- Estrazione della prima riga e iterazione $riga = mysql_fetch_array( $risultato ); if (!$riga) exit("non ci sono prodotti in $reparto "); Prodotti del reparto alimsur // // $riga OR exit("non ci sono prodotti in $reparto "); // Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 25 Interrogazioni sul database (5)... while ( $riga ) { // ---- Visualizzaione della riga $idprodotto = $riga["idprodotto"]; $descrizione = $riga["descrizione"]; $prezzo = $riga["prezzo"]; echo "Codice = $idprodotto, Descrizione = $descrizione, Prezzo = $prezzo <HR>"; // ---- Estrazione della prossima riga $riga = mysql_fetch_array( $risultato ); echo "Numero prodotti = ", mysql_num_rows($risultato); // ---- Chiusura della connessione Prodotti del reparto alimsur Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 26 Interazione con Form HTML (1) Per mostrare queste funzionalità consideriamo il caso di un utente che vuole effettuare acquisti presso un azienda che commercializza prodotti alimentari on line e, tramite un form, richiede l elenco dei prodotti del reparto desiderato. Lo script di risposta visualizza i prodotti del reparto scelto, con codice, descrizione e prezzo. L utente a questo punto effettua un ordine comunicando codice e quantità di un prodotto desiderato e i propri dati. Vedi le pagine HTML e Php nei seguenti file: RichiestaElencoProdotti.html ProdottiReparto.php RegistraOrdine.php Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 27 9

10 Interazione con Form HTML (2) RichiestaElencoProdotti.html Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 28 Interazione con Form HTML (3) ProdottiReparto.php Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 29 Interazione con Form HTML (4)... ProdottiReparto.php... // ---- Costruzione del comando SELECT $sqlcmd = "SELECT IDProdotto, Descrizione, Prezzo "; $sqlcmd.= "FROM Prodotti "; $sqlcmd.= "WHERE Reparto = '$reparto' "; // ---- Interrogazione e gestione dell'errore $risultato = mysql_query( $sqlcmd ); $risultato OR exit("errore nell'interrogazione: <BR> $sqlcmd "); if ( mysql_num_rows($risultato)==0 ) exit("non ci sono prodotti nel reparto $desrep"); <TABLE BORDER=1 CELLPADDING=4> <TR> <TH>Codice</TH> <TH>Descrizione</TH> <TH>Prezzo</TH> </TR> Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 30 10

11 Interazione con Form HTML (5) ProdottiReparto.php while ( $riga=mysql_fetch_array($risultato) ) { $idprodotto = $riga["idprodotto"]; $descrizione = $riga["descrizione"]; $prezzo = $riga["prezzo"]; echo "<TR>"; echo "<TD>$idprodotto</TD>"; echo "<TD>$descrizione</TD>"; echo "<TD>$prezzo</TD>"; echo "</TR>"; echo "</TABLE><BR>"; echo "Numero prodotti = ", mysql_num_rows($risultato); echo "<BR><HR>"; // Chiusura della connessione mysql_close($conn); Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 31 Interazione con Form HTML (6) ProdottiReparto.php <STRONG> Per ordinare un prodotto compili il modulo e faccia clic su: Invia Ordine </STRONG> <FORM ACTION="http:// /RegistraOrdine.php" METHOD="POST" > <INPUT Type="text" NAME="idprodotto" SIZE=10> Codice Prodotto<BR> <INPUT Type="text" NAME="quantita" VALUE="1" SIZE=4> Quantità<BR> <INPUT Type="text" NAME="cliente" SIZE=4> Codice Cliente<BR> <INPUT Type="text" NAME="nome" SIZE=20> Nome <INPUT Type="text" NAME=cognome SIZE=20> Cognome <HR> <BR> <INPUT TYPE="submit" VALUE="Invia Ordine"> <INPUT TYPE="reset" VALUE="Annulla"> </FORM>... Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 32 Interazione con Form HTML (7) RegistraOrdine.php Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 33 11

12 Validazione dei dati (1) I dati inviati dagli utenti devono essere controllati sia per ragioni di sicurezza, sia per prevenire malfunzionamenti dovuti a valori inattesi o irragionevoli dei dati trasmessi erroneamente o maliziosamente dagli utenti Controlli lato client (eseguiti dal browser) richiedono Javascript Controlli lato server Web eseguiti da script PHP Controlli lato server database sono i vincoli d integrità ecc. Se RegistraOrdine.php riceve come parametri: un codice prodotto corretto, il carattere d come quantità e il valore nullo per cliente, lo script invia il seguente messaggio: Prodotto ordinato: Zuppa di pesce Prezzo unitario: 6.30 Quantità ordinata: d Registra un ordine Importo ordine: 0 senza cliente e con quantità uguale a 0 Ordine registrato alle 05:58:06 del giorno: Cliente: Identificativo ordine: 13/8 Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 34 Validazione dei dati (2) Per controllare l esatta natura dei valori trasmessi usiamo il codice: $idprodotto = $_POST["idprodotto"]; $quantita = $_POST["quantita"]; $cliente = $_POST["cliente"]; echo "prodotto = "; var_dump($idprodotto); echo "<BR>"; echo "quantita = "; var_dump($quantita); echo "<BR>"; echo "cliente = "; var_dump($cliente); echo "<BR>"; if ($quantita > 0 ) echo "maggiore <BR>"; else echo "minore uguale <BR>"; echo "quantita = ", $quantita*1, "<BR>"; Controlli su: stringhe nulle, e valori opportuni in base al contesto nel quale si opera I dati arrivano sempre allo script come stringhe di caratteri I dati omessi arrivano come stringhe vuote: Se un parametro inizia con caratteri di tipo numerico viene gestito come valore numerico Se un parametro inizia con caratteri non numerici oppure è la stringa nulla diventa 0 nel calcolo di espressioni numeriche Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 35 Validazione dei dati (3) Validazione dei caratteri inseriti. Per esempio: sono validi solo caratteri alfanumerici. $user = $_POST["utente"]; $pwd = $_POST["password"]; $ammessi = "abcdefghijklmnopqrstuvwxyz". "ABCDEFGHIJKLMNOPQRSTUVWXYZ "; $userok = true; for( $pos=0; $pos<strlen($user) && $userok; $pos++ ) { $car = substr($user, $pos, 1); if ( strpos($ammessi, $car) === false ) $userok = false; $pwdok = true; for( $pos=0; $pos<strlen($pwd) && $pwdok; $pos++ ) { $car = substr($pwd, $pos, 1); if ( strpos($ammessi, $car) === false ) $pwdok = false; if ($userok && $pwdok ) { accesso ai dati else echo "Inserimento dati non corretto ; ===!== Confronto per valore e tipo Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 36 12

13 Validazione dei dati (4) Validazione dei caratteri inseriti. Per esempio: certi termini non sono ammessi $user = $_POST["utente"]; $vietate = array ("select", "insert", "update", "delete", "drop", "alter", "--", "'"); $userok = true; for( $k=0; $k <= 7 && $userok; $k++ ) { if ( strpos($vietate[$k], $user)!== false ) $userok = false;... if ($userok && $pwdok ) { accesso ai dati else echo "Inserimento dati non corretto ; $CMD = Select * From Utenti Where. User = $user and Psw = $pwd Cosa succede se l utente come user o password inserisce: 1 OR 1 = 1 Per impedire l SQL injection si usano appunto il controllo dei caratteri o delle parole immesse oltre alla applicazione della funzione: mysql_real_escape_string(... ) che sostituisce ai caratteri speciali le rispettive sequenze di escape. Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 37 Esercizi 1. Scrivere uno script per inserire righe nella tabella Clienti di un database. La tabella ha il seguente schema: Clienti(IDCliente, Nome, Cognome) e tutti i campi sono di tipo Varchar. 2. Scrivere uno script per modificare i dati inseriti nella tabella Clienti del precedente esercizio. 3. Scrivere uno script per cancellare una riga inserita nella tabella Clienti dell esercizio Scrivere uno script per modificare o cancellare un record della tabella Clienti dell esercizio 1. Lo script deve visualizzare il comando eseguito e in caso di errore nel comando deve inviare un messaggio con la descrizione e il numero dell errore. Provatelo cercando di cancellare o modificare un record inesistente. 5. Scrivere uno script per inserire righe nella tabella Prodotti di schema: Prodotti(IDProdotto, Descrizione, Categoria, Prezzo) con la chiave auto_increment. Visualizzare il comando eseguito e il valore assunto dalla chiave. 6. La tabella Atleti di un database contiene le informazioni sui concorrenti a una gara sportiva internazionale. Costruire la pagina Web per visualizzare l elenco alfabetico con cognome e nome degli atleti di una nazione prefissata. 7. Data una tabella Anagrafica di un database, costruire la pagina Web che visualizza, ordinata alfabeticamente, il cognome e nome delle persone che abitano in una data provincia fornita dall utente tramite un form HTML. 8. Creare una pagina PHP per inserire un nuovo studente nel database della segreteria fornendo i dati tramite il form di una pagina HTML. 9. Data la tabella Clienti di schema: ( Codice, Cognome, Nome, Indirizzo, CAP, ), si costruisca uno script che riceve, tramite un form HTML il codice di un cliente e ne controlla l esistenza in Clienti. Se il cliente è in archivio lo script ne visualizza i dati in un form con il quale è possibile aggiornare i dati del cliente. Se il cliente non è in archivio lo comunica con un messaggio. Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 38 // //----- Esercizi sulla tabella TCambi che generalizza CalcolaValuta.php // ---- Apertura della connessione etc. omessa // $sqlcmd = SELECT Divisa, Valore ";. FROM TCambi ; echo "Comando: $sqlcmd <BR>"; // $TCambi = mysql_query( $sqlcmd ); if (! $TCambi) exit( "Errore nel comando SELECT" ); // $riga = mysql_fetch_array($tcambi); while ($riga) { $divisa = $riga[ Divisa ]; $valore = $riga[ Valore ]; /* * elemento di array $valute * */ $valute[$divisa] = $valore; $riga = mysql_fetch_array($tcambi); Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 39 13

14 // ---- Esecuzione dell interrogazione. echo "<HR>"; echo <h2>valute in archivio</h2><br /> echo "<table border>"; echo "<tr> <th>divisa</th> <th>valore</th> </tr>"; $riga = mysql_fetch_array($tcambi); while ($riga) { $divisa = $riga[ Divisa ]; $valore = $riga[ Valore ]; echo "<tr> <td>$divisa</td> <td>$valore</td> </tr>"; $riga = mysql_fetch_array($tcambi); echo "</table>"; echo "<HR>"; Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 40 // // cancellazione di una riga di TCambi // $divisa = $_GET(divisa); $divisa = Maiuscolo( trim($divisa) ); if ($divisa = EURO ) exit( Operazione non ammessa per Euro ); // ---- Apertura conessione e scelta del DB omessi $sqlcmd = "DELETE FROM TCambi";. "WHERE Divisa = '$divisa'"; echo "Comando in esecuzione: $sqlcmd <BR>"; mysql_query($sqlcmd) or exit("errore nel comando DELETE"); echo "Comando eseguito con successo.<br>"; // ---- chiusura della connessione omessa Elaborazione automatica dei dati - Enrico Cavalli - Università di Bergamo 41 14

PHP: form, cookies, sessioni e. Pasqualetti Veronica

PHP: form, cookies, sessioni e. Pasqualetti Veronica PHP: form, cookies, sessioni e mysql Pasqualetti Veronica Form HTML: sintassi dei form 2 Un form HTML è una finestra contenente vari elementi di controllo che consentono al visitatore di inserire informazioni.

Dettagli

Un client su arduino invia i dati acquisiti ad un database

Un client su arduino invia i dati acquisiti ad un database Un client su arduino invia i dati acquisiti ad un database PROBLEMA Si vogliono inviare, periodicamente, i dati acquisiti da alcuni sensori ad un database presente su di un server. Arduino con shield Ethernet

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

Introduzione a MySQL

Introduzione a MySQL Introduzione a MySQL Cinzia Cappiello Alessandro Raffio Politecnico di Milano Prima di iniziare qualche dettaglio su MySQL MySQL è un sistema di gestione di basi di dati relazionali (RDBMS) composto da

Dettagli

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone SQL: il DDL Parti del linguaggio SQL Definizione di basi di dati (Data Definition Language DDL) Linguaggio per modificare

Dettagli

Lezione III: Oggetti ASP e interazione tramite form HTML

Lezione III: Oggetti ASP e interazione tramite form HTML Lezione III: Oggetti ASP e interazione tramite form HTML La terza lezione, come le precedenti, ha avuto una durata di due ore, di cui una in aula e l altra in laboratorio, si è tenuta alla presenza della

Dettagli

I FORM. L'attributo action contiene l'url del file php a cui devono essere inviati i file per essere elaborati.

I FORM. L'attributo action contiene l'url del file php a cui devono essere inviati i file per essere elaborati. I FORM Che cosa sono e che caratteristiche hanno Un form contiene molti oggetti che permettono di inserire dati usando la tastiera. Tali dati verranno poi inviati alla pagina php che avrà il compito di

Dettagli

ESEMPI DI FORM (da www.html.it)

ESEMPI DI FORM (da www.html.it) ESEMPI DI FORM (da www.html.it) Vediamo, nel particolare, tutti i tag che HTML 4.0 prevede per la creazione di form. Questo tag apre e chiude il modulo e raccoglie il contenuto dello stesso,

Dettagli

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity CORSO DI ALGORITMI E PROGRAMMAZIONE JDBC Java DataBase Connectivity Anno Accademico 2002-2003 Accesso remoto al DB Istruzioni SQL Rete DataBase Utente Host client Server di DataBase Host server Accesso

Dettagli

Introduzione ad Access

Introduzione ad Access Introduzione ad Access Luca Bortolussi Dipartimento di Matematica e Informatica Università degli studi di Trieste Access E un programma di gestione di database (DBMS) Access offre: un supporto transazionale

Dettagli

Dal modello concettuale al modello logico

Dal modello concettuale al modello logico Dal modello concettuale al modello logico Traduzione dal modello Entita - Associazione al modello Relazionale Ciclo di sviluppo di una base di dati (da parte dell utente) Analisi dello scenario Modello

Dettagli

Scrivere uno script php che, dato un array associativo PERSONE le cui chiavi sono i

Scrivere uno script php che, dato un array associativo PERSONE le cui chiavi sono i Esercizi PHP 1. Scrivere uno script PHP che produca in output: 1. La tabellina del 5 2. La tavola Pitagorica contenuta in una tabella 3. La tabellina di un numero ricevuto in input tramite un modulo. Lo

Dettagli

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

Editor vi. Editor vi

Editor vi. Editor vi Editor vi vi 1 Editor vi Il vi è l editor di testo standard per UNIX, è presente in tutte le versioni base e funziona con qualsiasi terminale a caratteri Permette di visualizzare una schermata alla volta

Dettagli

Esercizi su HTML e JavaScript

Esercizi su HTML e JavaScript Linguaggi per il Web prof. Riccardo Rosati Corso di laurea in Ingegneria dei sistemi informatici Sapienza Università di Roma, a.a. 2014/2015 Esercizi su HTML e JavaScript Esercizio 1 (a) Scrivere un documento

Dettagli

SQL Injection: le tecniche, i tool ed esempi pratici OWASP. The OWASP Foundation

SQL Injection: le tecniche, i tool ed esempi pratici OWASP. The OWASP Foundation SQL Injection: le tecniche, i tool ed esempi pratici SMAU E- Academy 2006 Antonio Parata collaboratore -Italy http://www.ictsc.it antonio.parata@ictsc.it http://www.owasp.org/index.php/italy Copyright

Dettagli

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate.

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate. Comandi filtro: sed Il nome del comando sed sta per Stream EDitor e la sua funzione è quella di permettere di editare il testo passato da un comando ad un altro in una pipeline. Ciò è molto utile perché

Dettagli

Basi di Dati. S Q L Lezione 5

Basi di Dati. S Q L Lezione 5 Basi di Dati S Q L Lezione 5 Antonio Virdis a.virdis@iet.unipi.it Sommario Gestione eventi Gestione dei privilegi Query Complesse 2 Esercizio 9 (lezione 4) Indicare nome e cognome, spesa e reddito annuali

Dettagli

Codici sorgenti di esempio per l'invio di email da pagine WEB per gli spazi hosting ospitati presso ITESYS SRL.

Codici sorgenti di esempio per l'invio di email da pagine WEB per gli spazi hosting ospitati presso ITESYS SRL. Data: 8 Ottobre 2013 Release: 1.0-15 Feb 2013 - Release: 2.0 - Aggiunta procedura per inviare email da Windows con php Release: 2.1-20 Mar 2013 Release: 2.2-8 Ottobre 2013 - Aggiunta procedura per inviare

Dettagli

Manipolazione di testi: espressioni regolari

Manipolazione di testi: espressioni regolari Manipolazione di testi: espressioni regolari Un meccanismo per specificare un pattern, che, di fatto, è la rappresentazione sintetica di un insieme (eventualmente infinito) di stringhe: il pattern viene

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

Database, SQL & MySQL. Dott. Paolo PAVAN Maggio 2002

Database, SQL & MySQL. Dott. Paolo PAVAN Maggio 2002 Database, SQL & MySQL Dott. Paolo PAVAN Maggio 2002 1 Struttura RDBMS MYSQL - RDBMS DATABASE TABELLE 2 Introduzione ai DATABASE Database Indica in genere un insieme di dati rivolti alla rappresentazione

Dettagli

Database Manager Guida utente DMAN-IT-01/09/10

Database Manager Guida utente DMAN-IT-01/09/10 Database Manager Guida utente DMAN-IT-01/09/10 Le informazioni contenute in questo manuale di documentazione non sono contrattuali e possono essere modificate senza preavviso. La fornitura del software

Dettagli

NetMonitor. Micro guida all uso per la versione 1.2.0 di NetMonitor

NetMonitor. Micro guida all uso per la versione 1.2.0 di NetMonitor NetMonitor Micro guida all uso per la versione 1.2.0 di NetMonitor Cos è NetMonitor? NetMonitor è un piccolo software per il monitoraggio dei dispositivi in rete. Permette di avere una panoramica sui dispositivi

Dettagli

Uso di form HTML per inviare dati nel web dinamico. I form HTML ed il web dinamico. Struttura di base dei form HTML. Form: controlli di input

Uso di form HTML per inviare dati nel web dinamico. I form HTML ed il web dinamico. Struttura di base dei form HTML. Form: controlli di input I form HTML ed il web dinamico Antonio Lioy < lioy@polito.it > Politecnico di Torino Dip. Automatica e Informatica orario.html Uso di form HTML per inviare dati nel web dinamico partenza arrivo data browser

Dettagli

P a s q u a l e t t i V e r o n i c a

P a s q u a l e t t i V e r o n i c a PHP: OOP Pasqualetti Veronica Oggetti Possiamo pensare ad un oggetto come ad un tipo di dato più complesso e personalizzato, non esistente fra i tipi tradizionali di PHP, ma creato da noi. 2 Gli oggetti

Dettagli

Esiste la versione per Linux di GeCo? Allo stato attuale non è prevista la distribuzione di una versione di GeCo per Linux.

Esiste la versione per Linux di GeCo? Allo stato attuale non è prevista la distribuzione di una versione di GeCo per Linux. FAQ su GeCo Qual è la differenza tra la versione di GeCo con installer e quella portabile?... 2 Esiste la versione per Linux di GeCo?... 2 Quali sono le credenziali di accesso a GeCo?... 2 Ho smarrito

Dettagli

Import Dati Release 4.0

Import Dati Release 4.0 Piattaforma Applicativa Gestionale Import Dati Release 4.0 COPYRIGHT 2000-2005 by ZUCCHETTI S.p.A. Tutti i diritti sono riservati.questa pubblicazione contiene informazioni protette da copyright. Nessuna

Dettagli

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione Utility & Configurazioni Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 4 Impostare i dati della propria azienda... 5 Aggiornare il programma... 6 Controllare l integrità

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un

Dettagli

Manuale di installazione e d uso

Manuale di installazione e d uso Manuale di installazione e d uso 1 Indice Installazione del POS pag. 2 Funzionalità di Base - POS Sagem - Accesso Operatore pag. 2 - Leggere una Card/braccialetto Cliente con il lettore di prossimità TeliumPass

Dettagli

MANUALE D USO G.ALI.LE.O GALILEO. Manuale d uso. Versione 1.1.0. [OFR] - Progetto GALILEO - Manuale d uso

MANUALE D USO G.ALI.LE.O GALILEO. Manuale d uso. Versione 1.1.0. [OFR] - Progetto GALILEO - Manuale d uso [OFR] - - G.ALI.LE.O Versione 1.1.0 MANUALE D USO pag. 1 di 85 [OFR] - - pag. 2 di 85 [OFR] - - Sommario 1 - Introduzione... 6 2 - Gestione ALbI digitale Ordini (G.ALI.LE.O.)... 7 2.1 - Schema di principio...

Dettagli

Dal punto di vista organizzativo sono possibili due soluzioni per il sistema di rete.

Dal punto di vista organizzativo sono possibili due soluzioni per il sistema di rete. Premessa. La traccia di questo anno integra richieste che possono essere ricondotte a due tipi di prove, informatica sistemi, senza lasciare spazio ad opzioni facoltative. Alcuni quesiti vanno oltre le

Dettagli

Guida alla registrazione al sistema Alias nell ambito della sperimentazione di cui alla Delibera n. 42/13/CIR. Versione 1.0

Guida alla registrazione al sistema Alias nell ambito della sperimentazione di cui alla Delibera n. 42/13/CIR. Versione 1.0 nell ambito della sperimentazione di cui alla Delibera n. 42/13/CIR Versione 1.0 1 Introduzione L impiego di Alias come mittente nei messaggi è attualmente regolato dalla delibera n. 42/13/CIR concernente

Dettagli

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email.

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email. La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net di Emanuele Mattei (emanuele.mattei[at]email.it) Introduzione In questa serie di articoli, vedremo come utilizzare

Dettagli

Museo&Web CMS Tutorial: installazione di Museo&Web CMS Versione 0.2 del 16/05/11

Museo&Web CMS Tutorial: installazione di Museo&Web CMS Versione 0.2 del 16/05/11 Museo&Web CMS Tutorial: installazione di Museo&Web CMS Versione 0.2 del 16/05/11 Museo & Web CMS v1.5.0 beta (build 260) Sommario Museo&Web CMS... 1 SOMMARIO... 2 PREMESSE... 3 I PASSI PER INSTALLARE MUSEO&WEB

Dettagli

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO CLSMS SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO Sommario e introduzione CLSMS SOMMARIO INSTALLAZIONE E CONFIGURAZIONE... 3 Parametri di configurazione... 4 Attivazione Software...

Dettagli

Guida alla scansione su FTP

Guida alla scansione su FTP Guida alla scansione su FTP Per ottenere informazioni di base sulla rete e sulle funzionalità di rete avanzate della macchina Brother, consultare la uu Guida dell'utente in rete. Per ottenere informazioni

Dettagli

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni Funzioni Le funzioni Con il termine funzione si intende, in generale, un operatore che, applicato a un insieme di operandi, consente di calcolare un risultato, come avviene anche per una funzione matematica

Dettagli

AVCP Generatore di XML

AVCP Generatore di XML AVCP Generatore di XML Perché è necessario... 2 Come Funziona... 3 Appalto... 3 Indice... 5 Anagrafiche... 6 Lotto... 7 Partecipanti... 9 Partecipante in Solitario (Partecipante)... 9 Partecipante in Raggruppamento...

Dettagli

PROCEDURA DI INSTALLAZIONE DI MYSQL E VolT per utenti Visual Trader e InteractiveBrokers

PROCEDURA DI INSTALLAZIONE DI MYSQL E VolT per utenti Visual Trader e InteractiveBrokers PROCEDURA DI INSTALLAZIONE DI MYSQL E VolT per utenti Visual Trader e InteractiveBrokers La procedura di installazione è divisa in tre parti : Installazione dell archivio MySql, sul quale vengono salvati

Dettagli

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1 Il gestionale come l'avete sempre sognato... Pag. 1 Le funzionalità di X-Cross La sofisticata tecnologia di CrossModel, oltre a permettere di lavorare in Internet come nel proprio ufficio e ad avere una

Dettagli

Come installare e configurare il software FileZilla

Come installare e configurare il software FileZilla Come utilizzare FileZilla per accedere ad un server FTP Con questo tutorial verrà mostrato come installare, configurare il software e accedere ad un server FTP, come ad esempio quello dedicato ai siti

Dettagli

Cicli in Visual Basic for Application. For contatore = inizio To fine istruzioni Next contatore

Cicli in Visual Basic for Application. For contatore = inizio To fine istruzioni Next contatore Cicli in Visual Basic for Application Le strutture del programma che ripetono l'esecuzione di una o più istruzioni sono chiamate Cicli. Alcune strutture per i cicli sono costruite in modo da venire eseguite

Dettagli

Il linguaggio SQL: transazioni

Il linguaggio SQL: transazioni Il linguaggio SQL: transazioni Sistemi Informativi T Versione elettronica: 4.8.SQL.transazioni.pdf Cos è una transazione? Una transazione è un unità logica di elaborazione che corrisponde a una serie di

Dettagli

Definizione. File di dati. Insieme di record omogenei memorizzati in memoria di massa. Record. Bianchi. Anna Roma 1980. Verdi. Luca Milano 1960.

Definizione. File di dati. Insieme di record omogenei memorizzati in memoria di massa. Record. Bianchi. Anna Roma 1980. Verdi. Luca Milano 1960. File di dati Definizione File di dati Insieme di record omogenei memorizzati in memoria di massa Bianchi Verdi Neri Verdi Anna Roma 1980 Luca Milano 1960 Andrea Torino 1976 Paola Bari 1954 Record Operazioni

Dettagli

MANUALE GESTIONE DELLE UTENZE - PORTALE ARGO (VERS. 2.1.0)

MANUALE GESTIONE DELLE UTENZE - PORTALE ARGO (VERS. 2.1.0) Indice generale PREMESSA... 2 ACCESSO... 2 GESTIONE DELLE UTENZE... 3 DATI DELLA SCUOLA... 6 UTENTI...7 LISTA UTENTI... 8 CREA NUOVO UTENTE...8 ABILITAZIONI UTENTE...9 ORARI D'ACCESSO... 11 DETTAGLIO UTENTE...

Dettagli

BIBLIOWIN 5.0WEB Versione 5.0.2

BIBLIOWIN 5.0WEB Versione 5.0.2 BIBLIOWIN 5.0WEB Versione 5.0.2 Premessa. In questa nuova versione è stata modificata la risoluzione (dimensione) generale delle finestre. Per gli utenti che navigano nella modalità a Finestre, la dimensione

Dettagli

Manuale tecnico Stazione Meteo Eolo Davis

Manuale tecnico Stazione Meteo Eolo Davis Descrizione Generale Manuale tecnico Stazione Meteo Eolo Davis EOLO DAVIS rappresenta una soluzione wireless di stazione meteorologica, basata su sensoristica Davis Instruments, con possibilità di mettere

Dettagli

RICEZIONE AUTOMATICA DEI CERTIFICATI DI MALATTIA 1.1. MALATTIE GESTIONE IMPORT AUTOMATICO 1.2. ATTIVAZIONE DELLA RICEZIONE DEL FILE CON L INPS

RICEZIONE AUTOMATICA DEI CERTIFICATI DI MALATTIA 1.1. MALATTIE GESTIONE IMPORT AUTOMATICO 1.2. ATTIVAZIONE DELLA RICEZIONE DEL FILE CON L INPS RICEZIONE AUTOMATICA DEI CERTIFICATI DI MALATTIA 1.1. MALATTIE GESTIONE IMPORT AUTOMATICO Abbiamo predisposto il programma di studio Web per la ricezione automatica dei certificati di malattia direttamente

Dettagli

CHE COS È DOCFLY FATTURAZIONE PA... 3 1.1 IL GESTIONALE WEB... 3 1.2 ACCESSO ALL INTERFACCIA WEB... 4 1.3 FUNZIONALITÀ DELL INTERFACCIA WEB...

CHE COS È DOCFLY FATTURAZIONE PA... 3 1.1 IL GESTIONALE WEB... 3 1.2 ACCESSO ALL INTERFACCIA WEB... 4 1.3 FUNZIONALITÀ DELL INTERFACCIA WEB... 1. CHE COS È DOCFLY FATTURAZIONE PA... 3 1.1 IL GESTIONALE WEB... 3 1.2 ACCESSO ALL INTERFACCIA WEB... 4 1.3 FUNZIONALITÀ DELL INTERFACCIA WEB... 5 1.3.1 CREAZIONE GUIDATA DELLA FATTURA IN FORMATO XML

Dettagli

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java]

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java] Desideriamo realizzare una applicazione web che ci consenta di calcolare il fattoriale di un numero. L'esercizio in sé non particolarmente difficile, tuttavia esso ci consentirà di affrontare il problema

Dettagli

2. GESTIONE DOCUMENTI NON SBN

2. GESTIONE DOCUMENTI NON SBN Istituto centrale per il catalogo unico delle biblioteche italiane e per le informazioni bibliografiche APPLICATIVO SBN-UNIX IN ARCHITETTURA CLIENT/SERVER 2. GESTIONE DOCUMENTI NON SBN Manuale d uso (Versione

Dettagli

Sottoprogrammi: astrazione procedurale

Sottoprogrammi: astrazione procedurale Sottoprogrammi: astrazione procedurale Incapsulamento di un segmento di programma presente = false; j = 0; while ( (j

Dettagli

Installazione di GFI Network Server Monitor

Installazione di GFI Network Server Monitor Installazione di GFI Network Server Monitor Requisiti di sistema I computer che eseguono GFI Network Server Monitor richiedono: i sistemi operativi Windows 2000 (SP4 o superiore), 2003 o XP Pro Windows

Dettagli

Documentazione tecnica

Documentazione tecnica Documentazione tecnica Come spedire via Post 1.1) Invio di Loghi operatore 1.2) Invio delle Suonerie (ringtone) 1.3) Invio di SMS con testo in formato UNICODE UCS-2 1.4) Invio di SMS multipli 1.5) Simulazione

Dettagli

Analisi di massima: L utente dovrà inserire un numero limite, e tramite vari calcoli verrà stampato a video la sequenza.

Analisi di massima: L utente dovrà inserire un numero limite, e tramite vari calcoli verrà stampato a video la sequenza. Relazione tecnica Fibonacci ANDENA GIANMARCO Traccia: Creare un algoritmo che permetta, dato un valore intero e positivo, di stabilire la sequenza utilizzando la regola di fibonacci dei numeri fino al

Dettagli

Interfaccia HTTP enduser Specifiche tecniche 03.10.2013

Interfaccia HTTP enduser Specifiche tecniche 03.10.2013 i-contact srl via Simonetti 48 32100 Belluno info@i-contact.it tel. 0437 30419 fax 0437 1900 125 p.i./c.f. 0101939025 Interfaccia HTTP enduser Specifiche tecniche 03.10.2013 1. Introduzione Il seguente

Dettagli

Altre opzioni Optralmage

Altre opzioni Optralmage di Personalizzazione delle impostazioni............ 2 Impostazione manuale delle informazioni sul fax......... 5 Creazione di destinazioni fax permanenti................ 7 Modifica delle impostazioni di

Dettagli

AlboTop. Software di gestione Albo per Ordini Assistenti Sociali

AlboTop. Software di gestione Albo per Ordini Assistenti Sociali AlboTop Software di gestione Albo per Ordini Assistenti Sociali Introduzione AlboTop è il nuovo software della ISI Sviluppo Informatico per la gestione dell Albo professionale dell Ordine Assistenti Sociali.

Dettagli

FileMaker Server 13. Pubblicazione Web personalizzata con PHP

FileMaker Server 13. Pubblicazione Web personalizzata con PHP FileMaker Server 13 Pubblicazione Web personalizzata con PHP 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker

Dettagli

Quali dati potremmo modificare? Impostazioni sul campionato, risultati, designazioni, provvedimenti disciplinari, statistiche e tanto ancora.

Quali dati potremmo modificare? Impostazioni sul campionato, risultati, designazioni, provvedimenti disciplinari, statistiche e tanto ancora. WCM Sport è un software che tramite un sito web ha l'obbiettivo di aiutare l'organizzazione e la gestione di un campionato sportivo supportando sia i responsabili del campionato sia gli utilizzatori/iscritti

Dettagli

Corso SOL Gestione catalogo libro moderno 21-22 settembre 2009

Corso SOL Gestione catalogo libro moderno 21-22 settembre 2009 Corso SOL Gestione catalogo libro moderno 21-22 settembre 2009 Introduzione generale Autenticazione dell operatore https://sebina1.unife.it/sebinatest Al primo accesso ai servizi di Back Office, utilizzando

Dettagli

Il linguaggio SQL Basi di dati 1. Il linguaggio SQL. Angelo Montanari. Dipartimento di Matematica e Informatica Università di Udine

Il linguaggio SQL Basi di dati 1. Il linguaggio SQL. Angelo Montanari. Dipartimento di Matematica e Informatica Università di Udine Il linguaggio SQL Basi di dati 1 Il linguaggio SQL Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Il linguaggio SQL Basi di dati 2 Introduzione SQL (Structured Query Language)

Dettagli

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it SMS API Documentazione Tecnica YouSMS SOAP API YouSMS Evet Limited 2015 http://www.yousms.it INDICE DEI CONTENUTI Introduzione... 2 Autenticazione & Sicurezza... 2 Username e Password... 2 Connessione

Dettagli

l Editor vi vi (visual editor) è stato scritto per essere utilizzabile con qualsiasi tipo di terminale.

l Editor vi vi (visual editor) è stato scritto per essere utilizzabile con qualsiasi tipo di terminale. l Editor vi Negli ambienti Unix esistono molti editor di testo diversi; tuttavia vi è l unico che siamo sicuri di trovare in qualsiasi variante di Unix. vi (visual editor) è stato scritto per essere utilizzabile

Dettagli

Rational Asset Manager, versione 7.1

Rational Asset Manager, versione 7.1 Rational Asset Manager, versione 7.1 Versione 7.1 Guida all installazione Rational Asset Manager, versione 7.1 Versione 7.1 Guida all installazione Note Prima di utilizzare queste informazioni e il prodotto

Dettagli

Funzioni di base. Manualino OE6. Outlook Express 6

Funzioni di base. Manualino OE6. Outlook Express 6 Manualino OE6 Microsoft Outlook Express 6 Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito,

Dettagli

Introduzione. Esempio 1. Soluzione: SPOSTA_1.BAT

Introduzione. Esempio 1. Soluzione: SPOSTA_1.BAT Introduzione Un file batch è un file di testo di tipo ASCII che contiene una sequenza di comandi DOS. I file batch devono avere estensione.bat I comandi DOS all interno dei programmi batch sono eseguiti

Dettagli

Manuale Utente. S e m p l i c e m e n t e D a t i M i g l i o r i!

Manuale Utente. S e m p l i c e m e n t e D a t i M i g l i o r i! Manuale Utente S e m p l i c e m e n t e D a t i M i g l i o r i! INDICE INDICE... 3 INTRODUZIONE... 3 Riguardo questo manuale...3 Informazioni su VOLT 3 Destinatari 3 Software Richiesto 3 Novità su Volt...3

Dettagli

Rapida Introduzione all uso del Matlab Ottobre 2002

Rapida Introduzione all uso del Matlab Ottobre 2002 Rapida Introduzione all uso del Matlab Ottobre 2002 Tutti i tipi di dato utilizzati dal Matlab sono in forma di array. I vettori sono array monodimensionali, e così possono essere viste le serie temporali,

Dettagli

Form Designer Guida utente DOC-FD-UG-IT-01/01/12

Form Designer Guida utente DOC-FD-UG-IT-01/01/12 Form Designer Guida utente DOC-FD-UG-IT-01/01/12 Le informazioni contenute in questo manuale di documentazione non sono contrattuali e possono essere modificate senza preavviso. La fornitura del software

Dettagli

Guida all utilizzo del dispositivo USB

Guida all utilizzo del dispositivo USB Guida all utilizzo del dispositivo USB 30/04/2013 Sommario - Limitazioni di responsabilità e uso del manuale... 3 1. Glossario... 3 2. Guida all utilizzo del dispositivo USB... 4 2.1 Funzionamento del

Dettagli

Comunicazione scuola famiglia

Comunicazione scuola famiglia Manuale d'uso Comunicazione scuola famiglia INFOZETA Centro di ricerca e sviluppo di soluzioni informatiche per la scuola Copyright InfoZeta 2013. 1 Prima di iniziare l utilizzo del software raccomandiamo

Dettagli

SIASFi: il sistema ed il suo sviluppo

SIASFi: il sistema ed il suo sviluppo SIASFI: IL SISTEMA ED IL SUO SVILUPPO 187 SIASFi: il sistema ed il suo sviluppo Antonio Ronca Il progetto SIASFi nasce dall esperienza maturata da parte dell Archivio di Stato di Firenze nella gestione

Dettagli

ARTICOLO 4: CONDIZIONI DI REALIZZAZIONE E DI FATTURAZIONE DELLE PRESTAZIONI

ARTICOLO 4: CONDIZIONI DI REALIZZAZIONE E DI FATTURAZIONE DELLE PRESTAZIONI CONDIZIONI PARTICOLARI DI WEB HOSTING ARTICOLO 1: OGGETTO Le presenti condizioni generali hanno per oggetto la definizione delle condizioni tecniche e finanziarie secondo cui HOSTING2000 si impegna a fornire

Dettagli

ACCREDITAMENTO EVENTI

ACCREDITAMENTO EVENTI E.C.M. Educazione Continua in Medicina ACCREDITAMENTO EVENTI Manuale utente Versione 1.5 Maggio 2015 E.C.M. Manuale utente per Indice 2 Indice Revisioni 4 1. Introduzione 5 2. Accesso al sistema 6 2.1

Dettagli

Appendice I. Principali procedure ed istruzioni per la gestione di files, l'analisi statistica di tipo descrittivo e la correlazione semplice

Appendice I. Principali procedure ed istruzioni per la gestione di files, l'analisi statistica di tipo descrittivo e la correlazione semplice . Principali procedure ed istruzioni per la gestione di files, l'analisi statistica di tipo descrittivo e la correlazione semplice Ordinamento di osservazioni: PROC SORT PROC SORT DATA=fa il sort è numerico

Dettagli

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata Giampiero Carboni Davide Travaglia David Board Rev 5058-CO900C Interfaccia operatore a livello di sito FactoryTalk

Dettagli

Configurazione Area51 e Bilance Bizerba

Configurazione Area51 e Bilance Bizerba Configurazione Area51 e Bilance Bizerba Ultimo Aggiornamento: 20 settembre 2014 Installazione software Bizerba... 1 Struttura file bz00varp.dat... 5 Configurazione Area51... 6 Note tecniche... 8 Gestione

Dettagli

Funzioni matlab per la gestione dei file. Informatica B Prof. Morzenti

Funzioni matlab per la gestione dei file. Informatica B Prof. Morzenti Funzioni matlab per la gestione dei file Informatica B Prof. Morzenti File Contenitori di informazione permanenti Sono memorizzati su memoria di massa Possono continuare a esistere indipendentemente dalla

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello della Web Application 5 3 Struttura della web Application 6 4 Casi di utilizzo della Web

Dettagli

Principali caratteristiche piattaforma web smsmobile.it

Principali caratteristiche piattaforma web smsmobile.it SmsMobile.it Principali caratteristiche piattaforma web smsmobile.it Istruzioni Backoffice Post get http VERSION 2.1 Smsmobile by Cinevision srl Via Paisiello 15/ a 70015 Noci ( Bari ) tel.080 497 30 66

Dettagli

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA in termini generali: Dati in input un insieme S di elementi (numeri, caratteri, stringhe, ) e un elemento

Dettagli

Semplici Algoritmi di Ordinamento

Semplici Algoritmi di Ordinamento Fondamenti di Informatica Semplici Algoritmi di Ordinamento Fondamenti di Informatica - D. Talia - UNICAL 1 Ordinamento di una sequenza di elementi Esistono molti algoritmi di ordinamento. Tutti ricevono

Dettagli

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi alternative: function nome { lista-comandi } oppure nome ( ) {

Dettagli

Le funzionalità di un DBMS

Le funzionalità di un DBMS Le funzionalità di un DBMS Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DBMS.pdf Sistemi Informativi L-A DBMS: principali funzionalità Le

Dettagli

Introduzione alle reti radiomobili. Meglio wireless o wired???

Introduzione alle reti radiomobili. Meglio wireless o wired??? GSM - GPRS Introduzione alle reti radiomobili Wireless Vs Wired L unica differenza sembra consistere nel mezzo trasmissivo radio, eppure: Le particolari caratteristiche del mezzo trasmissivo hanno un grosso

Dettagli

1. Il Servizio. 2. Protocollo SMS-Server

1. Il Servizio. 2. Protocollo SMS-Server 1. Il Servizio 2. Protocollo SMS-Server 3. Protocollo HTTP Post e Get 3.1) Invio di SMS di testo 3.2) Invio di SMS con testo in formato UNICODE UCS-2 3.3) Simulazione di un invio 3.4) Possibili risposte

Dettagli

Guida ai Servizi Internet per il Referente Aziendale

Guida ai Servizi Internet per il Referente Aziendale Guida ai Servizi Internet per il Referente Aziendale Indice Indice Introduzione...3 Guida al primo accesso...3 Accessi successivi...5 Amministrazione dei servizi avanzati (VAS)...6 Attivazione dei VAS...7

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

Progetto Istanze On Line

Progetto Istanze On Line 2011 Progetto Istanze On Line 21 febbraio 2011 INDICE 1 INTRODUZIONE ALL USO DELLA GUIDA... 3 1.1 SIMBOLI USATI E DESCRIZIONI... 3 2 PROGETTO ISTANZE ON LINE... 4 2.1 COS È E A CHI È RIVOLTO... 4 2.2 NORMATIVA

Dettagli

La ricorsione. Politecnico di Milano Sede di Cremona

La ricorsione. Politecnico di Milano Sede di Cremona La ricorsione Politecnico di Milano Sede di Cremona Gianpaolo Cugola Dipartimento di Elettronica e Informazione cugola@elet.polimi.it http://www.elet.polimi.it/~cugola Definizioni ricorsive Sono comuni

Dettagli

SISSI IN RETE. Quick Reference guide guida di riferimento rapido

SISSI IN RETE. Quick Reference guide guida di riferimento rapido SISSI IN RETE Quick Reference guide guida di riferimento rapido Indice generale Sissi in rete...3 Introduzione...3 Architettura Software...3 Installazione di SISSI in rete...3 Utilizzo di SISSI in Rete...4

Dettagli

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi.

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet: la rete delle reti Alberto Ferrari Connessioni

Dettagli

Ultimo aggiornamento avvenuto il 18 giugno 2014. Sostituisce la versione del 2 maggio 2013 nella sua interezza.

Ultimo aggiornamento avvenuto il 18 giugno 2014. Sostituisce la versione del 2 maggio 2013 nella sua interezza. Condizioni di utilizzo aggiuntive di Acrobat.com Ultimo aggiornamento avvenuto il 18 giugno 2014. Sostituisce la versione del 2 maggio 2013 nella sua interezza. SERVIZI ONLINE ADOBE RESI DISPONIBILI SU

Dettagli

MANUALE DI UTILIZZO SMS MESSENGER

MANUALE DI UTILIZZO SMS MESSENGER MANUALE DI UTILIZZO SMS MESSENGER (Ultimo aggiornamento 14/05/2014) 2013 Skebby. Tutti i diritti riservati. INDICE INTRODUZIONE... 1 1.1. Cos è un SMS?... 1 1.2. Qual è la lunghezza di un SMS?... 1 1.3.

Dettagli