Presentazione del progetto

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Presentazione del progetto"

Transcript

1 Esempio Progetto PHP Un piccolo negozio online CORSO: Master di primo livello in tecnologie sicurezza web e networking Docente: Dott.ssa Daniela Remogna 1

2 Presentazione del progetto L azienda InfoTech è un piccolo negozio di informatica che tratta le seguenti categorie di articoli: CHIAVETTE HARD DISK RAM SCHEDE VIDEO PORTATILI ROUTER InfoTech decide di ingrandire la propria attività vendendo i propri prodotti sulla rete di Internet. Infotech ha bisogno di un sito Internet che le consenta di presentare i propri prodotti sul web. Inoltre anche i dipendenti dell azienda con basse competenze informatiche, devono aver la possibilità di inserire nuovi prodotti in modo semplice e veloce. 2

3 Presentazione del progetto Come progettare tutto questo? Prima di tutto bisogna pensare a come strutturare le pagine del sito. Quante sono? Cosa fanno? In linea generale dovranno esserci due categorie di pagine: La prima categoria è quella del front-end e qui troviamo le pagine visibili a tutti gli utenti, ad esempio la pagina catalogo prodotti. La seconda categoria è quella del back-end e qui troviamo le pagine di amministrazione del sito web, come ad esempio la pagina inserisci un nuovo prodotto. Le pagine del back-end dovrebbero essere protette con autenticazione. In questo modo solo il personale dell azienda InfoTech potrà inserire dei nuovi prodotti e non il resto del mondo di internet. La fase di autenticazione non sarà illustrata in questo progetto. Per ora ci accontentiamo di creare la struttura e le pagine senza protezione. 3

4 Struttura delle pagine FRONT-END: index.php prodotti.php GUIDE UTILI BACK-END: admin.php nuova_categoria.php nuovo_prodotto.php inserisci_prodotto.php inserisci_categoria.php RACCOLTA SCRIPT UTILI 4

5 L HOME PAGE la pagina index.php FRONT-END: index.php E la pagina di presentazione del sito. La parte più importante è il link CONSULTA IL CATALOGO che consente di sfogliare per categoria i prodotti registrati nel DATABASE. 5

6 LA PAGINA prodotti.php FRONT-END: prodotti.php E il catalogo prodotti del sito. Cosa fa questa pagina? In poche parole, legge il contenuto di due tabelle presenti nel database e impagina i risultati utilizzando l HTML e i CSS. La prima tabella ad essere letta è CATEGORIE. Mentre la seconda tabella è PRODOTTI. 6

7 LA SEZIONE AMMINISTRATIVA BACK-END: admin.php Questa sezione è quella che utilizzeranno i dipendenti dell azienda InfoTech per aggiungere in modo semplice e veloce nuovi prodotti. La parte più importante di questa pagina è il menu composto dalle voci NUOVO PRODOTTO, NUOVA CATEGORIA, HOME PAGE. 7

8 INSERIMENTO DI UN NUOVO PRODOTTO BACK-END: nuovo_prodotto.php Cosa fa questa pagina? Consente di registrare un nuovo prodotto nel database. La parte più importante è il FORM / MODULO che consente di raccogliere i dati inseriti dal personale dell InfoTech all interno di apposite caselle di testo/textarea e menu a tendina. Notare che il menu a tendina della Categoria viene compilato dinamicamente leggendo il contenuto della tabella Categorie. Il form spedisce i dati alla pagina inserisci_prodotto.php 8

9 LA PAGINA inserisci_prodotto.php BACK-END: inserisci_prodotto.php Cosa fa questa pagina? Raccoglie i dati digitati dal personale dell InfoTech nella pagina nuovo_prodotto.php e li salva nel database all interno della tabella PRODOTTI. 9

10 LA PAGINA nuova_categoria.php BACK-END: nuova_categoria.php Cosa fa questa pagina? Consente di registrare una nuova categoria di prodotti. La parte più importante è il FORM / MODULO che consente di raccogliere i dati inseriti dal personale dell InfoTech all interno delle caselle di testo. E importante che ogni elemento del form abbia un nome univoco (attributo name del tag apposito) 10

11 LA PAGINA prodotti.php BACK-END: inserisci_categoria.php Cosa fa questa pagina? Raccoglie i dati digitati dal personale dell InfoTech nella pagina nuova_categoria.php e li salva nel database all interno della tabella CATEGORIE. 11

12 Flusso pagine per l inserimento di un nuovo prodotto 1 index.php 2 admin.php 3 nuovo_prodotto.php 4 inserisci_prodotto.php 12

13 Progettazione DATABASE Per ogni articolo trattato si desidera visualizzare le seguenti informazioni: IDARTICOLO NOME CATEGORIA DESCRIZIONE QTA PREZZO FOTO 1 CHIAVE USB 1 GB KINGSTON CHIAVETTE Questo modello risponde alle esigenze degli utenti home office, delle piccole aziende e di scuole KIN_MH_51796_DTI_1GB_C.jpg 2 CHIAVETTA USB BRACCIALE 1GB NERO CHIAVETTE La particolarità di questa pen drive è costituita dal fatto che la puoi facilmente indossare come un braccialetto in modo da avere sempre con te i tuoi dati, le tue foto e la tua musica! NEO_MH_55930_PD2104K_2_C.jpg 3 SAMSUNG HARD DISK 80GB 2.5 IDE HARD DISK Una grande capacità di archiviazione associata ad un funzionamento silenzioso ed affidabile SHD_MM_63058_HM080HC.jpg 4 HARD DISK 1 THERA SATA2 GREEN POWER HARD DISK La prima famiglia di hard disk attenti ai consumi! WDG_MM_58362_WD10EACS.jpg 13

14 TECNOLOGIE E necessario creare e progettare un database dove memorizzare i dati dei prodotti trattati. E necessario progettare pagine dinamiche che permettano di inserire nuovi prodotti nel database. Per fare tutto ciò useremo le Tecnologie Web Server Side. 14

15 Tecnologie Web Server Side Php è un modulo aggiuntivo per web servers che permette di creare delle pagine web dinamiche. Esempi di applicazioni: 1. Contatore accessi, Blog 2. Inserire/Modificare/Leggere dati memorizzati in un database 3. Realizzare un sito di commercio elettronico 4. Programmi gestionali che funzionano via WEB (gestione magazzino, gestione commesse etc) LINK di progetti sviluppati in php: CMS(Content Management System): per creare siti web in modo semplice e automatico. URL: Programmi gestionali che funzionano via web: GAFFI - Gestione affitti via WEB: è un programma scritto in PHP eseguibile su server WEB Apache e DBMS Mysql per gestire gli immobili dati in locazione: Software gestione alberghiera: residence/ Open Source E-Commerce: E 15

16 PREREQUISITI (Structured Query Language) è un linguaggio creato per l'accesso a informazioni memorizzate nei DATABASE. Permette di: 1. Creare tabelle 2. Inserire/Modificare/Cancellare dati in tabelle 3. Definire le relazioni 4. etc Si utilizza insieme ad un linguaggio OSPITE, che nel nostro caso è il PHP. Qualsiasi programma gestionale(software per la gestione di prenotazioni Alberghiere, commercio elettronico, gestione commesse) è basato su un database 16

17 SERVER CHE SI UTILIZZERANNO è un Database management system (DBMS) relazionale, composto da un client con interfaccia a caratteri e un server, entrambi disponibili sia per sistemi Unix che per Windows, anche se prevale un suo utilizzo in ambito Unix. Apache è il nome dato alla piattaforma server Web più diffusa (ma anche al gruppo di lavoro open source che ha creato, sviluppato e aggiornato il software server), in grado di operare da sistemi operativi UNIX-Linux e Microsoft. 17

18 EasyPHP è una piattaforma di sviluppo Web, che permette di far funzionare localmente (senza connettersi ad un server esterno) degli script PHP. EasyPHP non è solo un software, ma un ambiente di sviluppo comprendente: 1. due server (un server Web Apache e un server di basi di dati MySQL) 2. un interprete di script PHP 3. un amministratore di database MySQL con interfaccia grafica chiamato phpmyadmin. Dispone di un interfaccia d amministrazione che permette di gestire gli utenti, l avvio e lo spegnimento dei server. Permette di installare in un volta sola tutto il necessario per iniziare lo sviluppo locale di PHP. 18

19 Il server Apache crea automaticamente di default un dominio virtuale (in locale) all indirizzo di localhost (http:// ). EasyPHP può essere utilizzato come applicazione portatile, per esempio attraverso una chiave USB. La versione 2.0 apporta le nuove versioni dei suoi componenti: Apache 2.2.3, PHP 5.2.0, MySQL 5.0.2, PHPMyAdmin , SQLiteManager Il software ha l'enorme vantaggio di installare tutti i software necessari per la progettazione e il funzionamento di un sito web in locale. E' possibile vedere le pagine progettate semplicemente digitando l'indirizzo:http://localhost nella barra degli indirizzi del proprio browser. 19

20 LINK PhpMyAdmin: EasyPhp: Apache: MySql: PHP: 20

21 COSA DOBBIAMO FARE? Dobbiamo creare un nuovo database dove memorizzare i prodotti trattati dall azienda InfoTech. Questo database sarà composto da due tabelle: la tabella Prodotti e la tabella Categorie. 21

22 CREAZIONE DEL DATABASE Per creare un nuovo database è necessario accedere a PhpMyAdmin attraverso la seguente procedura: cliccare sull icona E di easyphp e scegliere la voce Amministrazione, oppure aprire il browser e digitare il seguente url: 22

23 EASY PHP ADMINISTRATION Questa è una pagina di riepilogo che mostra quali sono i server e moduli installati in EasyPhp. Per gestire il server di database Mysql cliccare su Manage Database 23

24 phpmyadmin PhpMyAdmin è un tool che permette di gestire l'amministrazione di database MySQL. Scritto in linguaggio PHP permette di gestire tramite web browser i database contenuti in un server mysql. Cliccando sul menu a tendina (Database) è possibile selezionare un database esistente Qui è possibile creare un nuovo database. 24

25 CREAZIONE DEL DATABASE Per il nostro progetto creiamo un database nominato infotechdb Tutte le operazioni che esegue phpmyadmin sono sempre traducibili in linguaggio SQL. 25

26 CREAZIONE DELLA TABELLA CATEGORIE Un database è composto da una o più tabelle. Per creare una nuova tabella, compilare la maschera presenta in crea una nuova tabella nel database infotechdb. 26

27 Inserimento dei campi Una tabella è composta da uno o più campi (colonne). Ogni tabella dovrebbe avere un campo di tipo chiave primaria che identifica in maniera univoca ogni record(riga) della tabella. Inoltre la chiave primaria viene utilizzata per creare relazioni tra tabelle. Per definire un campo di tipo chiave primaria, mettere la spunta sul simbolo della 27 chiave.

28 Inserimento dei campi La tabella Categoria è composta da due campi: IDCategorie e Nome. Per ogni campo bisogna specificare quale tipo di dato conterrà, un po come le variabili. Il campo IDCategoria sarà la chiave primaria della tabella Categorie, è di tipo INT e si auto incrementa da solo. Cliccare su Salva per confermare la creazione della tabella. Guida sul linguaggio SQL: 28

29 CREAZIONE della tabella CATEGORIE PhpMyAdmin mostra sempre il codice SQL utilizzato per creare la tabella. Cliccare su infotechdb 29

30 CREAZIONE della tabella PRODOTTI E possibile creare altre tabelle compilando la maschera Crea una nuova tabella del database infotechdb Creiamo la tabella prodotti composta da 7 campi e clicchiamo sul pulsante Esegui. 30

31 CREAZIONE dei campi della tabella prodotti In questo caso il campo IDProdotti sarà la chiave primaria della tabella prodotti. Notare che il campo Descrizione è stato impostato di tipo LONGTEXT. 31

32 CREAZIONE dei campi della tabella prodotti Notare che il campo foto non contiene l immagine, ma solo il nome dell immagine o il suo percorso. Questo perché in genere le immagini si salvano all interno di cartelle e sul database si salva solo il nome. 32

33 CREAZIONE dei campi della tabella prodotti Cliccando su Salva viene creata la tabella Prodotti e viene mostrato il codice SQL generato. 33

34 CREAZIONE delle pagine dinamiche A questo punto la fase di creazione del database è terminata. Ora dobbiamo costruire le nostre pagine dinamiche in linguaggio PHP. Partiamo dal BACK-END ovvero costruiamo le pagine per inserire un nuovo prodotto o una nuova categoria nel database. Creiamo in C:\Program Files\EasyPHP1-8\www una cartella di nome infotech e al suo interno memorizzeremo tutti i file del sito. Per accedere al sito sarà sufficiente digitare nella barra degli indirizzi: 34

35 La sezione Amministrativa Creiamo un file php nominato admin.php Questa sezione è semplice, l unica cosa un po particolare è che il menu lo includiamo dinamicamente attraverso l istruzione php include. <? include "menu.inc";?> Questo è il contenuto del file menu.inc: <a class='admin' href='nuovo_prodotto.php'>nuovo PRODOTTO</a> <a class='admin' href='nuova_categoria.php'>nuova CATEGORIA</a> <a class='admin' href='index.php'>home PAGE</a> In questo modo possiamo includere il menu in tutte le pagine della sezione amministrazione. Questo sistema ha il vantaggio di offrire un facile aggiornamento delle voci del menu poiché basta aggiornare un unico file e tutte le pagine di amministrazione si aggiornano di conseguenza. 35

36 La sezione Amministrativa Ecco il listato di codice per creare la pagina admin.php Notare come il codice PHP si mischi con il codice HTML. <HTML> <HEAD> <TITLE>HOME PAGE - INFOTECH IL TUO NEGOZIO DI INFORMATICA ONLINE</TITLE> <LINK rel="stylesheet" href='stile.css'> </HEAD> <BODY> <IMG src='img/testata.jpg'> <H1>INFOTECH IL TUO NEGOZIO DI INFORMATICA ONLINE</H1> <H2>SEZIONE AMMINISTRATIVA</H2> <a href='admin.php'><img src='img/area_amministrativa.jpg'></a><br><br> <p style='width:600px;text-align:justify;font-family:tahoma,verdana,sans-serif;border:1px solid black;'> Benvenuto nell'area amministrativa di <b>infotech.</b><br><br> Tramite il <b>menu</b> sottostante avrai la possibilità di aggiornare la tua banca dati online inserendo <b>nuovi prodotti</b> o <b>nuove categorie</b> compilando le apposite interfacce web. </p> <!-- INCLUDO IL MENU DELLA SEZIONE AMMINISTRATIVA --> <? include "menu.inc" menu.inc";?> <br><br> <IMG src='img/pie_di_pagina.jpg'> </BODY> </HTML> 36

37 La pagina di inserimento di una nuova categoria Creiamo un file php nominato nuova_categoria.php La parte più importante di questa pagina è la maschera di inserimento di un nuova categoria. <FORM action='inserisci_categoria.php' method='get'> <TABLE> <TR> <TD class='newp'>nome Nuova Categoria</TD> <TD><INPUT type='text' name='nome_categoria nome_categoria'></td> </TR> <TR> <TD><INPUT type='reset' value='azzera'> <TD><INPUT type='submit' value='inserisci CATEGORIA'></TD> </TR> </TABLE> </FORM> E importante impostare l attributo name del tag INPUT, perché è in base a quel valore che faremo riferimento al testo digitato all interno della casella di testo tramite PHP. Prestare attenzione anche al metodo di invio del form, in questo caso è il metodo GET. 37

38 Listato pagina nuova_categoria.php <HTML> <HEAD> <TITLE>INSERISCI UNA NUOVA CATEGORIA</TITLE> <LINK rel="stylesheet" href='stile.css'> </HEAD> <BODY> <IMG src='img/testata.jpg'> <H1>INFOTECH IL TUO NEGOZIO DI INFORMATICA ONLINE</H1> <H2>SEZIONE AMMINISTRAZIONE</H2> <? include "menu.inc"?> <H3>INSERISCI UNA NUOVA CATEGORIA</H3> <FORM action='inserisci_categoria.php' method='get'> <TABLE> <TR> <TD class='newp'>nome Nuova Categoria</TD> <TD><INPUT type='text' name='nome_categoria'></td> </TR> <TR> <TD><INPUT type='reset' value='azzera'> <TD><INPUT type='submit' value='inserisci CATEGORIA'></TD> </TR> </TABLE> </FORM> <br><br> <IMG src='img/pie_di_pagina.jpg'> </BODY> </HTML> 38

39 La pagina che salva una nuova categoria Creiamo un file php nominato inserisci_categoria.php. Il primo passo di questo script è quello di leggere il valore digitato nella casella di testo nominata nome_categoria della pagina nuova_categoria.php Siccome il form invia i dati attraverso il metodo GET, per leggerlo si usa l array associativo $_GET Costruisco la query SQL che mi permette di inserire una nuova categoria. <?php $nome_cat=$_get["nome_categoria"]; include "database.inc"; $query="insert INTO Categorie(Nome) VALUES('$nome_cat')"; mysql_query($query) or die("query fallita: ".mysql_error()); Eseguo la query. 39

40 Listato pagina inserisci_categoria.php <HTML> <HEAD> <TITLE>AREA AMMINISTRATIVA - INSERISCI CATEGORIA</TITLE> <LINK rel="stylesheet" href='stile.css'> </HEAD> <BODY> <IMG src='img/testata.jpg'> <H1>INFOTECH IL TUO NEGOZIO DI INFORMATICA ONLINE</H1> <a href='admin.php'><img src='img/area_amministrativa.jpg'></a><br> <? include "menu.inc"?> <?php $nome_cat=$_get["nome_categoria"]; include "database.inc"; $query="insert INTO Categorie(Nome) VALUES('$nome_cat')"; mysql_query($query) or die("query fallita: ".mysql_error()); echo "<br><br><strong>inserimento AVVENUTO CON SUCCESSO</strong><br><br>"; mysql_close($connessione);?> <br><br> <IMG src='img/pie_di_pagina.jpg'> </BODY> </HTML> 40

41 La pagina di inserimento di un nuovo prodotto Creiamo un file php nominato nuovo_prodotto.php La parte più importante di questa pagina è la maschera di inserimento di un nuovo prodotto. Il menu a tendina categoria è compilato in modo dinamico leggendo il contenuto della tabella categorie. Quindi sarà necessario stabilire una connessione con il server di database MySql. Siccome le pagine dinamiche in genere stabiliscono una connessione con il server di database allora si crea un file esterno nominato database.inc che include le istruzioni per collegarsi al server di database. <? /* Stabiliamo la connesione verso il server di Database Mysql */ $connessione= mysql_connect("localhost", "root", "") or die("connessione nn risucita: ". mysql_error()); /** Selezioniamo il database datidb **/ mysql_select_db("infotechdb") or die("selezione database non avvenuta");?> 41

42 La pagina di inserimento di un nuovo prodotto <? /* Stabiliamo la connesione verso il server di Database Mysql */ $connessione= mysql_connect("localhost", "root", "") or die("connessione nn risucita: ". mysql_error()); /** Selezioniamo il database datidb **/ mysql_select_db("infotechdb") or die("selezione database non avvenuta");?> Descrizione delle funzioni PHP utilizzate: mysql_connect stabilice una connessione ad un server MySQL. Il primo parametro indica l indirizzo del server, il secondo la username, il terzo la password (in questo caso la password è nulla). mysql_select_db seleziona un database MySQL. Accetta come parametro il nome del database con cui si desidera lavorare. mysql_error Restituisce il testo dell'errore dall'ultima funzione MySQL, oppure '' (la stringa vuota) se nessun errore intercorre. Gli errori ritornano dal database MySQL senza visualizzare i messaggi di avvertimento. Si usa invece mysql_error() per recuperare il testo dell'errore. die equivale alla funzione exit. Interrompe l esecuzione dello script e stampa il messaggio specificato. Elenco di tutte le funzioni mysql: 42

43 La pagina di inserimento di un nuovo prodotto Le funzioni più importanti di questa fase sono: mysql_query() invia una query al database selezionato Solo per le istruzioni SELECT mysql_query() restituisce un identificativo di risorsa o FALSE se la query non è stata eseguita correttamente. Per altri tipi di istruzioni SQL(UPDATE,DELETE,INSERT) mysql_query() restituisce TRUE in caso di successo e FALSE in caso di errore. <SELECT name='categoria_prodotto'> <!-- I VALORI LI LEGGIAMO DALLA TABELLA CATEGORIE --> <? include "database.inc"; $query="select IDCategorie, Nome FROM CATEGORIE"; $risultato=mysql_query($query) or die("errore nella query". mysql_error()); while($riga=mysql_fetch_array($risultato,mysql_assoc)){ echo "<OPTION value=". $riga['idcategorie']. ">". $riga['nome']. "</OPTION>\n"; </SELECT>?> } mysql_free_result($risultato); mysql_close($connessione); 43

44 La pagina di inserimento di un nuovo prodotto mysql_fetch_array: restituisce un array che corrisponde alla riga caricata o FALSE se non ci sono più righe. Si utilizza quando si lavora con un istruzione SQL di tipo SELECT che puo restituire 0, 1 o più righe di una tabella. Questa funzione ci permette di scorrere riga per riga la tabella. Il ciclo while continua finché non è diverso da FALSE. Si potrebbe anche scrivere così: $riga=mysql_fetch_array($risultato,mysql_assoc); while($riga!=false){ echo.. ; $riga=mysql_fetch_array($risultato,mysql_assoc); } <SELECT name='categoria_prodotto'> <!-- I VALORI LI LEGGIAMO DALLA TABELLA CATEGORIE --> <? include "database.inc"; $query="select IDCategorie, Nome FROM CATEGORIE"; $risultato=mysql_query($query) or die("errore nella query". mysql_error()); while($riga=mysql_fetch_array($risultato,mysql_assoc)){ echo "<OPTION value=". $riga['idcategorie']. ">". $riga['nome']. "</OPTION>\n"; </SELECT>?> } mysql_free_result($risultato); mysql_close($connessione); 44

45 La pagina di inserimento di un nuovo prodotto mysql_fetch_array è una versione estesa di mysql_fetch_row(). Oltre a memorizzare i dati del risultato in array con indice numerico, questa li memorizza anche con indici associativi usando i nomi dei campi come chiavi. Il secondo argomento opzionale tipo_risultato in mysql_fetch_array() è una costante e può assumere i seguenti valori: MYSQL_ASSOC, MYSQL_NUM e MYSQL_BOTH. Usando MYSQL_BOTH, si ottiene un array con entrambe gli indici (associativo e numerico). Usando MYSQL_ASSOC, si ottengono solo gli indici associativi, usando MYSQL_NUM, si ottengono solo gli indici numerici <SELECT name='categoria_prodotto'> <!-- I VALORI LI LEGGIAMO DALLA TABELLA CATEGORIE --> <? include "database.inc"; $query="select IDCategorie, Nome FROM CATEGORIE"; $risultato=mysql_query($query) or die("errore nella query". mysql_error()); while($riga=mysql_fetch_array($risultato,mysql_assoc)){ echo "<OPTION value=". $riga['idcategorie']. ">". $riga['nome']. "</OPTION>\n"; </SELECT>?> } mysql_free_result($risultato); mysql_close($connessione); 45

46 La pagina di inserimento di un nuovo prodotto Notare che come <option value è impostata la chiave primaria della tabella categoria. Mentre poi viene visualizzata il nome della categoria. Questo perché il form invia poi il valore della chiave primaria e non il nome della categoria. In questo modo nella tabella prodotti si salva la chiave primaria della tabella categoria e si imposta la relazione tra le due tabelle. mysql_free_result() libera tutta la memoria associata. mysql_free_result() deve essere richiamata solo se si è preoccupati sulla quantità di memoria usata dalle query che restituiscono dei grandi risultati. Tutta la memoria associata al risultato è automaticamente liberata al termine dell'esecuzione dello script. <SELECT name='categoria_prodotto'> <!-- I VALORI LI LEGGIAMO DALLA TABELLA CATEGORIE --> <? include "database.inc"; $query="select IDCategorie, Nome FROM CATEGORIE"; $risultato=mysql_query($query) or die("errore nella query". mysql_error()); while($riga=mysql_fetch_array($risultato,mysql_assoc)){ echo "<OPTION value=". $riga['idcategorie']. ">". $riga['nome']. "</OPTION>\n"; </SELECT>?> } mysql_free_result($risultato); mysql_close($connessione); 46

47 Listato pagina nuovo_prodotto.php <HTML> <HEAD> <TITLE>INSERISCI UN NUOVO PRODOTTO</TITLE> <LINK rel="stylesheet" href='stile.css'> </HEAD> <BODY> <IMG src='img/testata.jpg'> <H1>INFOTECH IL TUO NEGOZIO DI INFORMATICA ONLINE</H1> <H2>SEZIONE AMMINISTRAZIONE</H2> <? include "menu.inc"?> <H3>INSERISCI UN NUOVO PRODOTTO</H3> <!-- CREIAMO IL FORM PER L'INSERIMENTO DEI DATI --> <FORM action='inserisci_prodotto.php' method='post'> <TABLE class='inserimento'> <!-- SELEZIONIAMO LA CATEGORIA --> <TR> <TD class='newp'>categoria</td> 47

48 Listato pagina nuovo_prodotto.php <TD> <SELECT name='categoria_prodotto'> <!-- I VALORI LI LEGGIAMO DALLA TABELLA CATEGORIE --> <? include "database.inc"; $query="select IDCategorie, Nome FROM CATEGORIE"; $risultato=mysql_query($query) or die("errore nella query". mysql_error()); while($riga=mysql_fetch_array($risultato,mysql_assoc)){ echo "<OPTION value=". $riga['idcategorie']. ">".$riga['nome']."</option>\n"; } mysql_free_result($risultato); mysql_close($connessione);?> </SELECT> </TD> </TR> <TR> <TD class='newp'>nome:</td> <TD><INPUT type='text' name='nome_prodotto' size='30'></td> </TR> <TR> <TD class='newp'>descrizione:</td> <TD><TEXTAREA name='descr_prodotto'></textarea></td> </TR> <TR> <TD class='newp'>qta:</td> <TD><INPUT type='text' name='qta_prodotto' size='4'></td> </TR> 48

49 Listato pagina nuovo_prodotto.php <TR> <TD class='newp'>prezzo:</td> <TD><INPUT type='text' name='prezzo_prodotto' size='4'></td> </TR> <TR> <TD class='newp'>foto:</td> <TD><INPUT type='text' name='foto_prodotto' size='30'></td> </TR> <TR> <TD class='newp'><input type='reset' VALUE='CANCELLA'></TD> <TD><INPUT type='submit' VALUE='INSERISCI PRODOTTO'></TD> </TR> </TABLE> </FORM> <IMG src='img/pie_di_pagina.jpg'> </BODY> </HTML> 49

50 La pagina che salva il prodotto nel database Il compito principale della pagina inserisci_prodotto.php è quello di raccogliere i dati inseriti nel form della pagina nuovo_prodotto.php e di memorizzarli all interno di apposite variabili. Siccome i dati sono stati inviati con il metodo POST per leggere i valori si usa l array associativo $_POST. <?php $nome_prod=$_post["nome_prodotto"]; $cat_prod=$_post["categoria_prodotto"]; $descr=$_post["descr_prodotto"]; $quantita=$_post["qta_prodotto"]; $prezzo=$_post["prezzo_prodotto"]; $foto=$_post["foto_prodotto"]; 50

51 La pagina che salva il prodotto nel database La fase successiva è quello di stabilire la connessione al database. Sicome dobbiamo salvare un nuovo prodotto nel database creeremo una query di tipo inserimento e la eseguiremo tramite la funzione php mysql_query. include "database.inc"; $query="insert INTO Prodotti(Nome,Categoria,Descrizione,Qta,Prezzo,Foto) VALUES('$nome_prod','$cat_prod','$descr',$quantita,$prezzo,'$foto')"; mysql_query($query) or die("query fallita: ".mysql_error()); 51

52 Listato pagina inserisci_prodotto.php <HTML> <HEAD> <TITLE>AREA AMMINISTRATIVA - INSERISCI PRODOTTO</TITLE> <LINK rel="stylesheet" href='stile.css'> </HEAD> <BODY> <IMG src='img/testata.jpg'> <H1>INFOTECH IL TUO NEGOZIO DI INFORMATICA ONLINE</H1> <a href='admin.php'><img src='img/area_amministrativa.jpg'></a> <?php $nome_prod=$_post["nome_prodotto"]; $cat_prod=$_post["categoria_prodotto"]; $descr=$_post["descr_prodotto"]; $quantita=$_post["qta_prodotto"]; $prezzo=$_post["prezzo_prodotto"]; $foto=$_post["foto_prodotto"]; Questo va tutto su un unica riga include "database.inc"; $query="insert INTO Prodotti(Nome,Categoria,Descrizione,Qta,Prezzo,Foto) VALUES('$nome_prod','$cat_prod','$descr',$quantita,$prezzo,'$foto')"; mysql_query($query) or die("query fallita: ".mysql_error()); echo "<br><br><strong>inserimento AVVENUTO CON SUCCESSO</strong><br><br>"; mysql_close($connessione);?> <br> <IMG src='img/pie_di_pagina.jpg'> </BODY> </HTML> 52

53 Il catalogo prodotti Creiamo un file nominato prodotti.php I prodotti sono suddivisi per categorie, in questo caso abbiamo 5 categorie(chiavette, SCHEDE VIDEO, HARD DISK, PORTATILI, SCHEDE AUDIO). Per visualizzare i prodotti che appartengono a una categoria è necessario cliccare sulla voce corrispondente nel menu a sinistra. La cosa più importante di questa pagina è che riceve sempre un parametro nominato id. Notare la URL nella barra degli indirizzi: Il parametro id in questo caso identifica la categoria. Questo significa che le voci del menu delle categorie a sinistra sono composte nel modo seguente: Ogni volta che clicchiamo su una categoria, richiamiamo sempre la pagina prodotti.php e gli passiamo l idl della categoria che desideriamo visualizzare. <a href= prodotti.php prodotti.php?id=1 >CHIAVETTE</a> <a href= prodotti.php prodotti.php?id=2 >SCHEDE VIDEO</a> <a href= prodotti.php prodotti.php?id=3 >HARD DISK</a> E così via.. 53

54 Il catalogo prodotti Come prima cosa componiamo il menu delle categorie: Notare come si compone ogni collegamento ipertestuale. include "database.inc"; $query_cat="select * FROM Categorie"; $risult_cat=mysql_query($query_cat) or die("errore nella query". mysql_error()); while($riga=mysql_fetch_array($risult_cat,mysql_assoc)){ echo "<A href='prodotti.php?id=". $riga['idcategorie']. "'>". $riga['nome']. "</a> <br>"; } 54

55 Il catalogo prodotti Successivamente mostriamo i prodotti che appartengono alla categoria selezionata. Quindi come prima cosa dobbiamo leggere il parametro id passato alla pagina secondo questo formato prodotti.php?id=3 E facile notare che questo modo di passare i parametri è identico a quello utilizzato dai form con il metodo GET. Di conseguenza nella pagina prodotti.php per sapere qual è la categoria selezionata useremo un codice simile al seguente: $categoria_selezionata=$_get[ id id ]; Ora costruiamo una query di selezione con un vincolo,, cioè vogliamo SELEZIONARE tutti i prodotti dalla tabella PRODOTTI DOVE la categoria è uguale a $categoria_selezionata. Questo in linguaggio SQL si traduce in un istruzione come la seguente: SELECT * FROM Prodotti WHERE Categoria= $categoria_selezionata $categoria_selezionata In questo caso l asterisco l indica prendi tutti i campi della tabella. $categoria_selezionata=$_get['id']; $query="select * FROM Prodotti WHERE Categoria=$categoria_selezionata"; $risult_prod=mysql_query($query) or die("errore nella query". mysql_error()); 55

56 Il catalogo prodotti A questo punto non ci resta che impaginare i risultati. Notare come è inserita la foto del prodotto. echo "\n\t<td> <img src='foto/". $riga['foto']. "'></td>"; In questo esempio tutte le immagini dei prodotti sono memorizzati i all interno della cartella foto presente in C:\Program Files\EasyPHP1 EasyPHP1-8\www\INFOTECH\foto e sul database si salva solo il nome dell immagine immagine. Per farla visionare nella pagina si utilizza il tag HTML IMG. echo "<table>"; echo "<tr><th>foto</th><th>nome</th><th>descrizione</th><th>qta</th><th>prezzo</th></tr>"; while($riga=mysql_fetch_array($risult_prod,mysql_assoc)){ echo "\n\t<tr>"; echo "\n\t<td> <img src='foto/". $riga['foto']. "'></td>"; echo "\n\t<td>". $riga['nome']. "</td>"; echo "\n\t<td width=200px> ". $riga['descrizione']. "</td>"; echo "\n\t<td> ". $riga['qta']. "</td>"; echo "\n\t<td align='right'><b><span style='color:red'>". $riga['prezzo']. " </span></b></td>"; echo "</tr>"; } echo "</table>"; 56

BASI DI DATI http://www.diee.unica.it/~giacinto/bd. Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL

BASI DI DATI http://www.diee.unica.it/~giacinto/bd. Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL Università degli Studi di Cagliari Corso di Laurea in Ingegneria Elettronica Contatti BASI DI DATI http://www.diee.unica.it/~giacinto/bd Esercitazione su PHP & MySQL! Roberto Tronci! e-mail: roberto.tronci@diee.unica.it!

Dettagli

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server 2) Il Server richiama l'interprete PHP il quale esegue i comandi contenuti nel file.php specificato nell'attributo action del tag form creando un file HTML sulla base dei dati inviati dall utente 1) Il

Dettagli

PHP e MySQL. Scripting server-side per accesso a DB MySQL

PHP e MySQL. Scripting server-side per accesso a DB MySQL PHP e MySQL Scripting server-side per accesso a DB MySQL Connessione a un DB MySQL Prima di accedere ai dati è necessario creare una connessione con il DB In PHP si utilizza la funzione mysql_connect,

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012 Architettura di una applicazione Web Browser Web HTTP Server Web PHP Dati View Control

Dettagli

2. Costruire un database con Apache, PHP e MySql

2. Costruire un database con Apache, PHP e MySql 2. Costruire un database con Apache, PHP e MySql Lo scopo di questa esercitazione è realizzare un server web e costruire un database accessibile attraverso Internet utilizzando il server Apache, il linguaggio

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

APPUNTI DI PHP : V INFORMATICA SEZIONE G

APPUNTI DI PHP : V INFORMATICA SEZIONE G APPUNTI DI PHP : V INFORMATICA SEZIONE G Prof. Conti R. mysql_connect() Apre una connessione verso un DB MySQL. $db = mysql_connect([$db_host[, $db_username[, $db_password[, $newlink[,$clientflags]]]]]);

Dettagli

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN Il metodo migliore per creare nuovi DB è quello di usare l interfaccia del PHPMYADMIN (che viene installata automaticamente con il pacchetto easy

Dettagli

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

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

PHP 5. PHP ed i database. Database e tabelle. Struttura di un DB relazionale. Accesso a database

PHP 5. PHP ed i database. Database e tabelle. Struttura di un DB relazionale. Accesso a database PHP ed i database PHP 5 Accesso a database PHP funziona con molti database relazionale che includono: Oracle Access Postgres SQL Server MySQL Useremo MySQL poiché è semplice da usare, gratuito e molto

Dettagli

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

Data Base. Master Bio Info Reti e Basi di Dati Lezione 6 Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

Questo punto richiederebbe uno sviluppo molto articolato che però a mio avviso va al di là delle possibilità fornite al candidato dal tempo a disposizione. Mi limiterò quindi ad indicare dei criteri di

Dettagli

Quesiti 6 e 7) - 9 - Creiamo il file query4.php su una piattaforma OPEN SOURCE usando in linguaggio PHP ospitato su un webserver APACHE per interrogare un database MYSQL. Tale file verrà attivato cliccando

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

PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP)

PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP) PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP) Augusto Scatolini (webmaster@comunecampagnano.it) (a.scatolini@linux4campagnano.net) Miniguida n. 183 Ver. 1.0 aprile 2013 La prima guida

Dettagli

Introduzione ad EasyPHP

Introduzione ad EasyPHP Introduzione ad EasyPHP http://www. easyphp.org Per chiarimenti, http://www.ing.unibs.it/~alberto.lazzaroni 1 EasyPHP: cosa è, a cosa serve EasyPHP è una piattaforma di sviluppo Web (ambienti di sviluppo

Dettagli

MySQL Database Management System

MySQL Database Management System MySQL Database Management System II parte Progetto gestione booking prenotazioni on-line 1. Progettazione e creazione struttura database che chiameremo booking. 2. Progettazione e creazione di un form

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

Lavorare con MySQL Parte Seconda.

Lavorare con MySQL Parte Seconda. Lavorare con MySQL Parte Seconda. PHP, dalla versione 4.0, usufruisce difunzioni native per colloquiare con MySQL, senza appoggiarsi ad alcuna libreria o modulo esterno. In questa lezione verranno esaminate

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

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2010 Seconda prova scritta Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA

Dettagli

PHP 5. Accesso a database

PHP 5. Accesso a database PHP 5 Accesso a database PHP ed i database PHP funziona con molti database relazionali che includono: Oracle Access Postgres SQL Server MySQL Useremo MySQL poiché è semplice da usare, gratuito e molto

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

Il software ideale per la gestione delle prenotazioni GUIDA UTENTE

Il software ideale per la gestione delle prenotazioni GUIDA UTENTE Il software ideale per la gestione delle prenotazioni GUIDA UTENTE Presentazione... 2 Installazione... 3 Prima esecuzione... 6 Registrazione del programma... 8 Inserimento Immobile... 9 Inserimento proprietario...

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation

Dettagli

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE CHIARA FERRARI 5I MERCURIO INDICE: 1. TRACCIA DEL PROBLEMA 2. SVILUPPO DEL PROGETTO (ENTITA, ATTRIBUTI) 3. SCHEMA E-R DELLA BASE DEI

Dettagli

MySQL Database Management System

MySQL Database Management System MySQL Database Management System http://www.mysql.com/ DATABASE RELAZIONALI Un database è una collezione strutturata di informazioni. I database sono delle strutture nelle quali è possibile memorizzare

Dettagli

bool mysql_select_db([string database_name [,resource link_identifier]]) Connessione ad un server MySQL vuole conettere

bool mysql_select_db([string database_name [,resource link_identifier]]) Connessione ad un server MySQL vuole conettere Connessione ad un server MySQL resource mysql_connect ([string server [, string username [, string password [, bool new_link [, int client_flags]]]]]) server nome o indirizzo del server username nome utente

Dettagli

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com 15.03.2006 Ver. 1.0 Scarica la versione pdf ( MBytes) Nessuno si spaventi! Non voglio fare né un manuale

Dettagli

Installazione & Configurazione Php e MySQL su Mac Os X. Php

Installazione & Configurazione Php e MySQL su Mac Os X. Php Installazione & Configurazione Php e MySQL su Mac Os X Php PHP è un linguaggio di scripting interpretato, con licenza Open Source, originariamente concepito per la realizzazione di pagine web dinamiche.

Dettagli

Tecnologie e Programmazione Web

Tecnologie e Programmazione Web Presentazione 1 Tecnologie e Programmazione Web Html, JavaScript e PHP RgLUG Ragusa Linux Users Group SOftware LIbero RAgusa http://www.solira.org - Nunzio Brugaletta (ennebi) - Reti 2 Scopi di una rete

Dettagli

Le mie immagini su WEB: l ABC per iniziare. 6 maggio 2008

Le mie immagini su WEB: l ABC per iniziare. 6 maggio 2008 Le mie immagini su WEB: l ABC per iniziare 6 maggio 2008 1 1) Le nostre immagini su internet; perchè? 2) il WEB...il pc di chi accede (il client)...il sito (server); 3) costruzione del sito (design, strumenti

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

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

Dettagli

Architettura a tre livelli (1)

Architettura a tre livelli (1) Elaborazione Automatica dei Dati Php e MySQL Enrico Cavalli Anno Accademico 2012-2013 Architettura a tre livelli (1) Le applicazioni sono sviluppate secondo una architettura a tre livelli, affermatasi

Dettagli

Introduzione a PHP Gestione dei Dati e della Conoscenza

Introduzione a PHP Gestione dei Dati e della Conoscenza Introduzione a PHP Gestione dei Dati e della Conoscenza Diego De Cao, Roberto Basili {decao,basili}@info.uniroma2.it a.a. 2008/2009 PHP Overview PHP (acronimo ricorsivo per "PHP: Hypertext Preprocessor")

Dettagli

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database Uso delle basi di dati Uso delle Basi di Dati Il modulo richiede che il candidato comprenda il concetto di base dati (database) e dimostri di possedere competenza nel suo utilizzo. Cosa è un database,

Dettagli

ISTRUZIONI PASSO PASSO PER CREARE UN SITO CON JOOMLA SU ALTERVISTA

ISTRUZIONI PASSO PASSO PER CREARE UN SITO CON JOOMLA SU ALTERVISTA ISTRUZIONI PASSO PASSO PER CREARE UN SITO CON JOOMLA SU ALTERVISTA REGISTRARSI AL SITO ALTERVISTA, PER OTTENERE SPAZIO WEB GRATUITO o Andare sul sito it.altervista.org o Nel riquadro al centro, scrivere

Dettagli

La principale particolarità del web dinamico è la possibilità di variare i contenuti delle pagine in base alle richieste degli utenti.

La principale particolarità del web dinamico è la possibilità di variare i contenuti delle pagine in base alle richieste degli utenti. La principale particolarità del web dinamico è la possibilità di variare i contenuti delle pagine in base alle richieste degli utenti. Questa possibilità si materializza attraverso i meccanismi che permettono

Dettagli

PHP e Structured Query Language

PHP e Structured Query Language Esercitazioni del corso di Tecnologie per la Comunicazione Aziendale PHP e Structured Query Language Marco Loregian loregian@disco.unimib.it www.siti.disco.unimib.it/didattica/tca2008 Interrogazioni (ripasso)

Dettagli

VERIFICA CORSO: MASTER DI PRIMO LIVELLO IN TECNOLOGIE DI SICUREZZA WEB E NETWORKING CODICE CORSO: B22-75-2008-0

VERIFICA CORSO: MASTER DI PRIMO LIVELLO IN TECNOLOGIE DI SICUREZZA WEB E NETWORKING CODICE CORSO: B22-75-2008-0 VERIFICA CORSO: MASTER DI PRIMO LIVELLO IN TECNOLOGIE DI SICUREZZA WEB E NETWORKING CODICE CORSO: B22-75-2008-0 UNITA FORMATIVA: LE TECNOLOGIE WEB LATO CLIENT DOCENTE: DANIELA REMOGNA DATA: 28 APRILE 2008

Dettagli

Corso Creare Siti WEB

Corso Creare Siti WEB Corso Creare Siti WEB INTERNET e IL WEB Funzionamento Servizi di base HTML CMS JOOMLA Installazione Aspetto Grafico Template Contenuto Articoli Immagini Menu Estensioni Sito di esempio: Associazione LaMiassociazione

Dettagli

2.1 Installazione e configurazione LMS [4]

2.1 Installazione e configurazione LMS [4] 2.1 Installazione e configurazione LMS [4] Prerequisti per installazione su server: Versione PHP: 4.3.0 o superiori (compatibilità a php5 da versione 3.0.1) Versione MySql 3.23 o superiori Accesso FTP:

Dettagli

RELAZIONE RELATIVA ALLA GESTIONE DEL SITO DI E-COMMERCE

RELAZIONE RELATIVA ALLA GESTIONE DEL SITO DI E-COMMERCE Gabriele Fiorani 5^D Mercurio 2012/2013 RELAZIONE RELATIVA ALLA GESTIONE DEL SITO DI E-COMMERCE TRACCIA DEL PROBLEMA Realizzare un sito di tipo e-commerce che consenta di gestire l intera procedura informatica

Dettagli

Utilizzare PHP 5. Le variabili GET e POST

Utilizzare PHP 5. Le variabili GET e POST Utilizzare PHP 5 Corso Interazione Uomo Macchina AA 2005/2006 Le variabili GET e POST La principale particolarità del web dinamico è la possibilità di variare i contenuti delle pagine in base alle richieste

Dettagli

M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2009 Seconda prova scritta M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA Tema di: INFORMATICA (Testo valevole per i corsi di

Dettagli

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

PHP. Per poter interagire con i dati che si trovano sul server remoto occorrono strumenti server-side. PHP Il linguaggio HTML e i linguaggi di scripting come Javascript impongono alcune limitazioni alle applicazioni che si possono realizzare : per esempio non è possibile costruire un sito Web che consenta

Dettagli

Vademecum al download, all installazione e all uso del software Easynota Acquisizione della NIR tramite codici a barre bidimensionali

Vademecum al download, all installazione e all uso del software Easynota Acquisizione della NIR tramite codici a barre bidimensionali Vademecum al download, all installazione e all uso del software Easynota Acquisizione della NIR tramite codici a barre bidimensionali Prerequisiti Configurazione consigliata : Windows 2000 / Windows XP

Dettagli

Servizio on-line di Analisi e Refertazione Elettrocardiografica

Servizio on-line di Analisi e Refertazione Elettrocardiografica Servizio on-line di Analisi e Refertazione Elettrocardiografica Guida utente Scopo del servizio... 2 Prerequisiti hardware e software... 3 Accesso all applicazione... 4 Modifica della password... 7 Struttura

Dettagli

Guida Utente PS Contact Manager GUIDA UTENTE

Guida Utente PS Contact Manager GUIDA UTENTE GUIDA UTENTE Installazione...2 Prima esecuzione...5 Login...7 Registrazione del programma...8 Inserimento clienti...9 Gestione contatti...11 Agenti...15 Archivi di base...16 Installazione in rete...16

Dettagli

Organizzazione delle informazioni: Database

Organizzazione delle informazioni: Database Organizzazione delle informazioni: Database Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)

Dettagli

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

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2013/2014 Laboratorio Progettazione Web PHP e MySQL Andrea Marchetti IIT-CNR 2013/2014 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation Application Storage PHP e DataBase Quando

Dettagli

Entrematic. Guida all e-commerce

Entrematic. Guida all e-commerce Entrematic Guida all e-commerce Introduzione alla guida Introduzione alla guida Introduzione alla guida Indice Attivazione di un account - Gestione dell account e modifica della password - Creazione e

Dettagli

GUIDA UTENTE PRIMA NOTA SEMPLICE

GUIDA UTENTE PRIMA NOTA SEMPLICE GUIDA UTENTE PRIMA NOTA SEMPLICE (Vers. 2.0.0) Installazione... 2 Prima esecuzione... 5 Login... 6 Funzionalità... 7 Prima Nota... 8 Registrazione nuovo movimento... 10 Associazione di file all operazione...

Dettagli

Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto. Approfondimento SOFTWARE PER L ARCHIVIAZIONE

Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto. Approfondimento SOFTWARE PER L ARCHIVIAZIONE APPROFONDIMENTO ICT Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto Approfondimento SOFTWARE PER L ARCHIVIAZIONE ORGANISMO BILATERALE PER LA FORMAZIONE IN CAMPANIA INDICE SOFTWARE PER

Dettagli

Console di Amministrazione Centralizzata Guida Rapida

Console di Amministrazione Centralizzata Guida Rapida Console di Amministrazione Centralizzata Contenuti 1. Panoramica... 2 Licensing... 2 Panoramica... 2 2. Configurazione... 3 3. Utilizzo... 4 Gestione dei computer... 4 Visualizzazione dei computer... 4

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

InfoWeb - Manuale d utilizzo

InfoWeb - Manuale d utilizzo InfoWeb - Manuale d utilizzo Tipologia Titolo Versione Identificativo Data stampa Manuale utente Edizione 1.2 01-ManualeInfoWeb.Ita.doc 05/12/2007 INDICE 1 INTRODUZIONE... 3 1.1 ACCESSO A INFOWEB... 6

Dettagli

Manuale d uso Gestionale di contabilità Ver. 1.0.8 [05/01/2015]

Manuale d uso Gestionale di contabilità Ver. 1.0.8 [05/01/2015] Manuale d uso Gestionale di contabilità Ver. 1.0.8 [05/01/2015] Realizzato e distribuito da Leggerasoft Sommario Introduzione... 3 Guida all installazione... 4 Fase login... 5 Menù principale... 6 Sezione

Dettagli

Cultura Tecnologica di Progetto

Cultura Tecnologica di Progetto Cultura Tecnologica di Progetto Politecnico di Milano Facoltà di Disegno Industriale - DATABASE - A.A. 2003-2004 2004 DataBase DB e DataBase Management System DBMS - I database sono archivi che costituiscono

Dettagli

SISTEMA EDITORIALE WEBMAGAZINE V.2.2

SISTEMA EDITORIALE WEBMAGAZINE V.2.2 SISTEMA EDITORIALE WEBMAGAZINE V.2.2 1 - Il funzionamento di Web Magazine Web Magazine è un applicativo pensato appositamente per la pubblicazione online di un giornale, una rivista o un periodico. E'

Dettagli

Gestione fatturazione via web

Gestione fatturazione via web Gestione fatturazione via web Presentazione e guida all'uso SoftRiz di Roberto Rizzi via Ca del Binda, 17-26100 Cremona P.I. 01313090191 C.F. RZZRRT66A20D150E info@softriz.it - www.softriz.it Indice Premessa...2

Dettagli

1. I database. La schermata di avvio di Access

1. I database. La schermata di avvio di Access 7 Microsoft Access 1. I database Con il termine database (o base di dati) si intende una raccolta organizzata di dati, strutturati in maniera tale che, effettuandovi operazioni di vario tipo (inserimento

Dettagli

2009. STR S.p.A. u.s. Tutti i diritti riservati

2009. STR S.p.A. u.s. Tutti i diritti riservati 2009. STR S.p.A. u.s. Tutti i diritti riservati Sommario COME INSTALLARE STR VISION CPM... 3 Concetti base dell installazione Azienda... 4 Avvio installazione... 4 Scelta del tipo Installazione... 5 INSTALLAZIONE

Dettagli

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System) (DataBase Management System) Sistemi di ges3one di basi di da3 Un Database Management System è un sistema software progettato per consentire la creazione e manipolazione efficiente di database (collezioni

Dettagli

Interazione con l utente : i moduli.

Interazione con l utente : i moduli. Interazione con l utente : i moduli. Nelle lezioni fin qui riportate, non abbiamo mai trattato l input di utente. Nelle applicazioni web, l input dell utente si acquisisce tramite i moduli (o FORM) HTML.

Dettagli

Applicazione client-server in PHP con database MySQL

Applicazione client-server in PHP con database MySQL Applicazione client-server in PHP con database MySQL Emanuele Scapin 1 1 Liceo Statale F.Corradini, via Milano 1, 36016 Thiene 30/05/2012 1 Premessa Dopo la trattazione di argomenti teorici di progettazione

Dettagli

phpmyedit con codice offuscato (Editor istantaneo di tabelle MySQL e generatore di codice PHP, open source)

phpmyedit con codice offuscato (Editor istantaneo di tabelle MySQL e generatore di codice PHP, open source) phpmyedit con codice offuscato (Editor istantaneo di tabelle MySQL e generatore di codice PHP, open source) Augusto Scatolini (webmaster@comunecampagnano.it) Ver. 1.0 Marzo 2011 Dopo aver visto DaDaBIK

Dettagli

FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!)

FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!) Panoramica sul Web design: FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!) FASE 2: Definire se lavorare su un CMS (es Joomla, Wordpress,

Dettagli

Guida all Utilizzo del Posto Operatore su PC

Guida all Utilizzo del Posto Operatore su PC Guida all Utilizzo del Posto Operatore su PC 1 Introduzione Indice Accesso all applicazione 3 Installazione di Vodafone Applicazione Centralino 3 Utilizzo dell Applicazione Centralino con accessi ad internet

Dettagli

9) si ritorna alla maschera di fig. 6, nella quale si clicca su "Salva modifiche" per completare l operazione.

9) si ritorna alla maschera di fig. 6, nella quale si clicca su Salva modifiche per completare l operazione. Fig. 8 La finestra Gestione file con il file appena caricato 9) si ritorna alla maschera di fig. 6, nella quale si clicca su "Salva modifiche" per completare l operazione. Fig. 9 Il corso con la nuova

Dettagli

COME CREARE E COLLEGARSI AD UN DATABASE MICROSOFT SQL SERVER O SUN MYSQL

COME CREARE E COLLEGARSI AD UN DATABASE MICROSOFT SQL SERVER O SUN MYSQL Codice documento 08052301 Data creazione 23/05/2008 Ultima revisione 06/06/2013 Software DOCUMATIC Versione 7 COME CREARE E COLLEGARSI AD UN DATABASE MICROSOFT SQL SERVER O SUN MYSQL Questo documento spiega

Dettagli

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.b Interazione con un database (MySQL Server)

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.b Interazione con un database (MySQL Server) MODULO 1 PARTE 3 Programmazione (scripting) server-side con PHP 3.b Interazione con un database (MySQL Server) Goy - a.a. 2009/2010 Programmazione Web 1 Informazione persistente Se vogliamo tener traccia

Dettagli

Simulazione seconda prova Esame di Stato Sito Web - Gestione di un centro agroalimentare all ingrosso (Parte seconda)

Simulazione seconda prova Esame di Stato Sito Web - Gestione di un centro agroalimentare all ingrosso (Parte seconda) Simulazione seconda prova Esame di Stato Sito Web - Gestione di un centro agroalimentare all ingrosso (Parte seconda) Il candidato realizzi inoltre il sito Internet del centro che deve permettere, tra

Dettagli

Lezione 6: Form 27/04/2012

Lezione 6: Form 27/04/2012 Lezione 6: Form In alcuni documenti HTML può essere utile creare dei moduli (form) che possono essere riempiti da chi consulta le pagine stesse (es. per registrarsi ad un sito). Le informazioni sono poi

Dettagli

Infine abbiamo anche effettuato un operazione di traduzione in italiano delle due aree principali di Joomla.

Infine abbiamo anche effettuato un operazione di traduzione in italiano delle due aree principali di Joomla. Joomla dopo l installazione Lezione 2 Joomla dopo l installazione Premessa Abbiamo nella lezione precedente installato offline la piattaforma di Joomla. Ricapitolando abbiamo prima configurato EasyPhp

Dettagli

7. Microsoft Access. 1) Introduzione a Microsoft Access

7. Microsoft Access. 1) Introduzione a Microsoft Access 1) Introduzione a Microsoft Access Microsoft Access è un programma della suite Microsoft Office utilizzato per la creazione e gestione di database relazionali. Cosa è un database? Un database, o una base

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

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

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

Guida all Utilizzo dell Applicazione Centralino

Guida all Utilizzo dell Applicazione Centralino Guida all Utilizzo dell Applicazione Centralino 1 Introduzione Indice Accesso all applicazione 3 Installazione di Vodafone Applicazione Centralino 3 Utilizzo dell Applicazione Centralino con accessi ad

Dettagli

MANUALE D USO Agosto 2013

MANUALE D USO Agosto 2013 MANUALE D USO Agosto 2013 Descrizione generale MATCHSHARE è un software per la condivisione dei video e dati (statistiche, roster, ) delle gare sportive. Ogni utente abilitato potrà caricare o scaricare

Dettagli

ios users guide il modulo copia commissione digitale su ipad

ios users guide il modulo copia commissione digitale su ipad ios users guide il modulo copia commissione digitale su ipad Ordini...pag. 4 Gestione...pag. 11 Impostazioni...pag. 13 Importa...pag. 14 Esporta...pag. 16 Business...pag. 18 www.ordersender.com ordini

Dettagli

Capitolo 3 Guida operativa del programma TQ Sistema

Capitolo 3 Guida operativa del programma TQ Sistema Capitolo 3 Guida operativa del programma TQ Sistema Panoramica delle funzionalità Questa guida contiene le informazioni necessarie per utilizzare il pacchetto TQ Sistema in modo veloce ed efficiente, mediante

Dettagli

Manuale per la configurazione di AziendaSoft in rete

Manuale per la configurazione di AziendaSoft in rete Manuale per la configurazione di AziendaSoft in rete Data del manuale: 7/5/2013 Aggiornamento del manuale: 2.0 del 10/2/2014 Immagini tratte da Windows 7 Versione di AziendaSoft 7 Sommario 1. Premessa...

Dettagli

Applicazione ASP di esempio

Applicazione ASP di esempio Applicazione ASP di esempio Database in rete Prof. Claudio Maccherani Un server web è un programma che gira su un computer sempre collegato ad Internet e che mette a disposizione file, pagine e servizi.

Dettagli

GUIDA SCRUTINIO ELETTRONICO Ver. 1.2

GUIDA SCRUTINIO ELETTRONICO Ver. 1.2 GUIDA SCRUTINIO ELETTRONICO Ver. 1.2 GUIDA PER I COORDINATORI DI CLASSE Le operazioni che il coordinatore dovrà effettuare per il regolare svolgimento dello scrutinio si articolano in tre fasi: 1. Accesso

Dettagli

Indice generale. Il BACK-END...3 COME CONFIGURARE JOOMLA...4 Sito...4 Locale...5 Contenuti...5

Indice generale. Il BACK-END...3 COME CONFIGURARE JOOMLA...4 Sito...4 Locale...5 Contenuti...5 Guida a Joomla Indice generale Il BACK-END...3 COME CONFIGURARE JOOMLA...4 Sito...4 Locale...5 Contenuti...5 Il BACK-END La gestione di un sito Joomla ha luogo attraverso il pannello di amministrazione

Dettagli

Manuale. Gestione biblioteca scolastica by Rosset Pier Angelo is licensed under a Creative Commons

Manuale. Gestione biblioteca scolastica by Rosset Pier Angelo is licensed under a Creative Commons Manuale Gestione biblioteca scolastica by Rosset Pier Angelo is licensed under a Creative Commons Premessa Gestione Biblioteca scolastica è un software che permette di gestire in maniera sufficientemente

Dettagli

RELAZIONE DI PROGETTO DELL ESAME STRUMENTI PER APPLICAZIONI WEB

RELAZIONE DI PROGETTO DELL ESAME STRUMENTI PER APPLICAZIONI WEB RELAZIONE DI PROGETTO DELL ESAME STRUMENTI PER APPLICAZIONI WEB Studente: Nigro Carlo N.mat.: 145559 Tema: Negozio virtuale Nome sito: INFOTECH Url: http://spaw.ce.unipr.it/progetti/infotech Per il progetto

Dettagli

MagiCum S.r.l. Progetto Inno-School

MagiCum S.r.l. Progetto Inno-School MagiCum S.r.l. Progetto Inno-School Area Web Autore: Davide Revisione: 1.2 Data: 23/5/2013 Titolo: Innopedia File: Documentazione_tecnica Sito: http://inno-school.netsons.org/ Indice: 1. Presentazione

Dettagli

La connessione php-mysql con MySQLi

La connessione php-mysql con MySQLi La connessione php-mysql con MySQLi Premessa Lo scenario che si intende alla base di questo capitolo è di disporre di un ambiente phpmysql rappresentato nel seguente schema: L'applicazione php viene eseguita

Dettagli

AGGIORNAMENTO DATI SU PORTALE DOCENTI

AGGIORNAMENTO DATI SU PORTALE DOCENTI AGGIORNAMENTO DATI SU PORTALE DOCENTI Il sito http://docenti.unicam.it consente agli utenti di accedere alle informazioni sui docenti dell' Università di Camerino: curriculum, carichi didattici, pubblicazioni,

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

SMS MANUALE D USO DELLA PIATTAFORMA WEB

SMS MANUALE D USO DELLA PIATTAFORMA WEB SMS MANUALE D USO DELLA PIATTAFORMA WEB INDICE 1. Accesso al sistema 1.1 Barra di controllo 1.2 Configurazione Account 1.3 Prezzi & Copertura 2. Utility & Strumenti 3. Messaggistica 3.1 Quick SMS 3.2 Professional

Dettagli

Dott.ssa Maria Vittoria Avolio. Dott.ssa Adriana Pietramala

Dott.ssa Maria Vittoria Avolio. Dott.ssa Adriana Pietramala Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Maria Vittoria Avolio avoliomv@unical.it Dott.ssa Adriana Pietramala a.pietramala@unical.it Riferimenti Manuale PHP http://www.php.net/download-docs.php

Dettagli

MOFING KIDs. 19.1- Come Avviare MoFing KIDS. Connesione WiFi: scegliere Controllo Genitori

MOFING KIDs. 19.1- Come Avviare MoFing KIDS. Connesione WiFi: scegliere Controllo Genitori MOFING KIDs 19.1- Come Avviare MoFing KIDS Connesione WiFi: scegliere Controllo Genitori ->cliccare su impostazioni ->cliccare Wifi e cliccare, a fianco di OFF, nella parte scura per accendere il Wifi

Dettagli