Baroni Nicoletta RELAZIONE SCRITTA. Carini Giulia RELATIVA AL PROGRAMMA GESTIONE MEDIAWORLD

Documenti analoghi
RELAZIONE SCRITTA RELATIVA AL PROGRAMMA GESTIONE MEDIAWORLD

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE CISALFA

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE TABELLA ATTORI

RELAZIONE E-COMMERCE ommerce/index.html

Relazione scritta relativa alla gestione del sito E-Commerce MediaWorld

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE

PHP e Structured Query Language

RELAZIONE E-COMMERCE

FtpZone Guida all uso

Joomla: Come installarlo e come usarlo. A cura di

RELAZIONE RELATIVA ALLA GESTIONE DEL SITO DI E-COMMERCE

PORTALE CLIENTI Manuale utente

$qb reale output Litri di benzina consumati pa.php

monitoraggio dei locomotori via Internet

RELAZIONE TECNICA GESTIONE CARTE DI CREDITO. a cura di EMANUELE CESARI

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

Portale Materiali Grafiche Tamburini. Grafiche Tamburini Materials Portal

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

Dopo aver installato WSFTP.le, alla prima schermata quando lo apriamo vedremo questo.

GateManager. 1 Indice. tecnico@gate-manager.it

RELAZIONE PROGETTO DATABASE GESTIONE BIBLIOTECA PERSONALE

Manuale d uso Lexun Area Riservata proprietà di logos engineering - Sistema Qualità certificato ISO 9001 Det Norske Veritas Italia

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

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

CONTENUTI 1. INTRODUZIONE CONCETTI BASICI SU EQUINOX CMS XPRESS ACCESSO A EQUINOX CMS XPRESS PAGINA D INIZIO...

Per accedere all area di gestione collegarsi al sito e digitare nell apposito box i dati di accesso (username: xxx password: xxx).

FOXWave Gestione gare ARDF IZ1FAL Secco Marco Sezione ARI BIELLA

ImporterOne Manuale Export Plugin Prestashop

19. LA PROGRAMMAZIONE LATO SERVER

Modulo 4 Il pannello amministrativo dell'hosting e il database per Wordpress

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

MySQL Database Management System

Guida alla configurazione della posta elettronica dell Ateneo di Ferrara sui più comuni programmi di posta

GERARCHIE RICORSIVE - SQL SERVER 2008

04/05/2011. Lezione 6: Form

Creazione Account PEC puntozeri su Outlook Express

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

Costruzione di Sit Web con PHP e MySQL. Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query

Progetto di Ingegneria del Software 2. SWIMv2

File, Modifica, Visualizza, Strumenti, Messaggio

ImporterONE Export Plugin Magento

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

Non vedo l ora Realizzazione di un sistema per la gestione dell orario scolastico

Installazione di Moodle. Preparato per: Gruppo A, Piattaforma di E - Learning Preparato da: Cinzia Compagnone, Vittorio Saettone

SARA DHANA. RELAZIONE NEGOZIO A.BASSI a.s.2013/2014

<?php include './include/page.php';

SOGI s.n.c. di Matteo Bruschetta & Nicola Pippa

MANUALE PARCELLA FACILE PLUS INDICE

Relazione Luca Raj. Relazione lavoro palestra. Indice:

Fate doppio click sul file con nome postgresql-8.0.msi e impostate le varie voci come riportato nelle immagini seguenti:

FISH Sardegna ONLUS. Manuale Utente.

CTVClient. Dopo aver inserito correttamente i dati, verrà visualizzata la schermata del tabellone con i giorni e le ore.

Vi ricordiamo che per qualsiasi problema tecnico o informazione potete contattare info@eduitalia.org oppure Francesco al

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per

Relazione e-commerce

INDICE. Accesso al Portale Pag. 2. Nuovo preventivo - Ricerca articoli. Pag. 4. Nuovo preventivo Ordine. Pag. 6. Modificare il preventivo. Pag.

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

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

SUPPORTO ON-LINE PER L ORIENTAMENTO ALLA SCELTA IMPRENDITORIALE GUIDA PER GLI UTENTI

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica.

Backup e Aggiornamenti

DOCUMENTO ESPLICATIVO

A cura del Prof. Pasquale Vastola. Iscrizione alla piattaforma virtuale MOODLE FASE 1. 1) Accedere al seguente indirizzo internet :

Guida all attivazione ipase

MySQL Database Management System

Esercitazione PAM. (Php Apache MySQL)

POSTA ELETTRONICA Per ricevere ed inviare posta occorrono:

Guida per la registrazione alla piattaforma di Gestione dei Corsi per il Consulente Tecnico Telematico

WEB-RECALL: GESTIONE DEI TICKETS DI ASSISTENZA

Note Operative per Accedere alla Posta Elettronica Certificata (PEC) Obbligo Iscrizioni 2011

Questa guida vi illustrerà i principali passaggi da eseguire per l'inserimento dei Bandi di gara.

Raggruppamenti Conti Movimenti

Manuale per la configurazione di AziendaSoft in rete


Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

Il linguaggio HTML - Parte 3

Database 3 affitto veicoli. Testo del quesito

Utilizzo del Terminalino

FH-SY capitolo Versione 3 - FH-SY.NET - FAQ -

ISTRUZIONI XCODE. Autore: Luca Florio (luca.florio<at>polimi.it)

SERVIZIO DI MESSAGGISTICA ALL UTENTE. Manuale per l operatore

Sistema Gestionale FIPRO. Dott. Enea Belloni Ing. Andrea Montagnani

1.0 GUIDA PER L UTENTE

Form Editor. Dove NomeProfilo è personalizzabile.

Innanzitutto andiamo sul sito ed eseguiamo il download del programma cliccando su Download Dropbox.

LETTERA D INSTALLAZIONE DELLA PROCEDURA SERVIZI SOCIALI

STAMPA UNIONE DI WORD

MANUALE D USO DELL E-COMMERCE. Versione avanzata

PLANET GYM IL PIANETA DEL FITNESS. Emanuele Cesari Anno scolastico 2013/2014 Agostino bassi 4D SIA Relazione palestra

La pagina Web modulo.html utilizza le specifiche di stile descritte nel foglio feedback.css.

Guida alla registrazione on-line di un DataLogger

GUIDA AL PRONTUARIO MOBILE

Guida all installazione e configurazione di Joomla 1.5

FtpZone Guida all uso Versione 2.1

SOSEBI PAPERMAP2 MODULO WEB MANUALE DELL UTENTE

Wordpress. Acquistare un sito web. Colleghiamoci con il sito

GUIDA UTENTE PRIMA NOTA SEMPLICE

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

Transcript:

Gruppo Mediaworld Baroni Nicoletta RELAZIONE SCRITTA Carini Giulia RELATIVA AL PROGRAMMA GESTIONE MEDIAWORLD Valentina Porchera Christian Pala Traccia del problema Realizzare un sito web tipo e-commerce che consenta di gestire l intera proceduta informatica e che permetta al visitatore di visualizzare i prodotti presenti in magazzino, al responsabile Bennet di visualizzare i clienti presenti nel file. Realizzare la procedura in php con Mysql e PHP, un'area con l'archivio prodotti (creazione, inserimento e visualizzazione). La visualizzazione deve poter essere utilizzata senza loggarsi ma direttamente dalla home page del sito. Un'area protetta dove si gestiscono i dati dei clienti: creazione, inserimento e visualizzazione. I dati di questo archivio possono essere consultati solo dal responsabile del negozio o dalla persona autorizzata all'inserimento dei dati. Tutte due le procedure devono essere inserite all'interno del sito web già realizzato. Analisi di massima il programma chiede di creare un sito e-commerce dove i clienti potranno senza registrarsi visualizzare tutti i prodotti del negozio e acquistarli direttamente on Line attraverso una registrazione al sito. Invece gli amministratori potranno gestire tutti i clienti, prodotti e acquisti direttamente da un area protetta. Variabili utilizzate Nei vari programmi vengono utilizzate una grande quantità di variabili che riporto nella tabella sottostante. Nome Pagina in cui viene inserita Funzione $id utenti_2.php Riporta il codice cliente $name utenti_2.php Riporta il nome dell utente $cognome utenti_2.php Riporta il cognome dell utente $email utenti_2.php Riporta l email dell utente $indirizzo utenti_2.php Riporta l indirizzo dell utente $username utenti_2.php Riporta l username $password utenti_2.php Riporta la password $codacq acqven_2.php Riporta il codice dell acquisto $quaacc_new acqven_2.php Riporta la quantità acquistata $codpro acqven_2.php Riporta il prezzo dell articolo $pretot acqven_2.php Riporta la quantità acquistata $codpro prodotti_2.php Riporta il codice prodotto $nompro prodotti_2.php e Riporta il nome del prodotto acqven_2.php $preuni prodotti_2.php Riporta il prezzo unitario $quanti prodotti_2.php Riporta la quantità $selezi utenti_a2.php Controlla che l utente abbia selezionato il record 1

$db in tutti i programmi Connessione al database MySQL $num in tutti i programmi Verifica che i dati siano stati inseriti correttamente $sqlinterr in tutti i programmi Comando per l inserimento dei dati $user loghi_1.php Riportano l username dell amministrare $pass Loghi_1.php Riportano la password dell amministrare $host Checklogin.php Identifica il server a cui si collega $username Checklogin.php Identifica il nome dell utente $password Checklogin.php Identifica la password del server (se esiste) $db_name Checklogin.php Identifica il nome del databse $tbl_name Checklogin.php Identifica il nome della tabella degli utenti $count Checklogin.php Identifica il num. Di utenti uguali a quello digitato $result Checklogin.php Identifica il risultato della consultazione $db Elabora_form.php/pagina Identifica la connessione al database cliente.php $sqlinterr Elabora_form.php/pagina Gestisce i comandi SQL cliente.php $num Elabora_form.php Identifica i record estratti $db_selected Paginacliente.php Gestisce la selezione di un database $res Paginacliente.php Esecuzione del comando di interrogazione SQL $num Paginacliente.php N. di record estratti dal comando SQL $i Paginacliente.php Visualizzazione dei record estratti ANALISI DEL DATA BASE Schema E-R delle base di dati ID nome codpro Utenti Cognome Email Quaacc_new preuni Prodotti user pretot nompro quanti Indiri. Pass. Acquisti Codacq nompro codpro 2

Schema logico relazionale della base di dati UTENTI ID name cognome indirizzo email 1 n ACQUISTI/VENDITE codacq nompro codpro pretot n 1 PRODOTTI codpro nompro preuni quanti username quaacc_new password REGOLE DI VINCOLO 1. A ogni cliente corrispondono più acquisti 2. A ogni prodotto corrispondono più acquisti Tracciato record Dopo questa analisi dovremo fare un tracciato record per testare l inserimento delle informazioni in campi prestabiliti nelle tabelle. Tabella PRODOTTI Nome campo Tipo Lunghezza Decimale Descrizione Formato Controlli Note codpro char 6 0 Codice prodotto 9(6) nompro varchar 20 0 Nome prodotto X(20) preuni decimal 5 2 Prezzo unitario 9(5.2) quanti int 3 0 Quantità 9(3) Tabella ACQUISTI / VENDITE Nome campo Tipo Lunghezza Decimale Descrizione Formato Controlli Note codacq char 6 0 Codice acquisto 9(6) Auto increm. nompro varchar 30 0 Nome prodotto x(30) codpro char 6 0 Codice prodotto 9(6) pretot decimal 10 5 Prezzo totale 9(10.2) quaacc_new int 3 0 Quantità acquistata 9(3) 3

Tabella UTENTI Nome campo Tipo Lunghezza Decimale Descrizione Formato Controlli Note id int 11 0 Codice cliente 9(11) Auto increm. name varchar 30 0 Nome utente X(30) cognome varchar 30 0 Cognome utente X(30) indirizzo varchar 30 0 Indirizzo utente X(30) email varchar 30 0 Email utente X(30) username varchar 30 0 Username X(30) password varchar 30 0 Password X(30) Analis i di minima Sono state realizzate 24 pagine php per la parte amministrativa: - acqven_1.php - prodotti_1.php - utenti_1.php - acqven_2.php - prodotti_2.php - utenti_2.php - acqven_a1.php - prodotti_a1.php - utenti_a1.php - acqven_a2.php - prodotti_a2.php - utenti_a2.php - acqven_m1.php - prodotti_m1.php - utenti_m1.php - acqven_m2.php - prodotti_m2.php - utenti_m2.php - acqven_m3.php - prodotti_m3.php - utenti_m3.php - acqven_q1.php - prodotti_q1.php - utenti_q1.php Sono state realizzate 9 pagine php per la parte riguardante il cliente ; -checklogin.php -elabora_form.php loghi_1.php -logout.php -logout2.php -logout2.php -paginacliente.php -paginacliente2.php -paginacliente3.php Abbiamo inizialmente realizzato il database con il linguaggio di programmazione Mys ql attraverso il programma Xampp, che ci permetterà di collegarci al supporto dove vorremmo creare il nostro database che verrà chiamato sito. Al suo interno abbiamo creato la tabelle prima elencate specificando i campi che vogliamo inserire al suo interno per poi collegare successivamente le tabelle alle rispettive pagine di modifica annullamento inserimento e consultazione che verranno utilizzate dall amministratore per gestire il sito di e-commerce. 4

Partendo dal primo programma di inserimento attraverso una form ci andiamo collegare al secondo. Ogni riga di programma deve essere preceduta da una riga di commento che serve a spiegare l operazione che si andrà successivamente a compiere. E essenziale creare una connessione al database MySQL per passare i dati dal form alla tabella creata. Si passa poi al programma di annullamento attraverso il quale si seleziona il record da cancellare, il programma di modifica attraverso il quale si modifica il record selezionato e l ultimo di consultazione dove è possibile consultare i prodotti contenuti nelle tabelle. Quest operazione si devono compiere per tutte le tabelle. Creazione del database da utilizzare: -Avviare il motore Apache -comandi di creazione Create table acquisti/vendite Create table prodotti Create table utenti (codacq char(6), (codpro char(6), (id int(11), nompro varchar(30), nompro varchar(20), name varchar(30), codpro char(6), preuni decimal(5.2), cognome char(30), pretot decimal(10.2), quaacc_new int(3) quanti int(3), indirizzo varchar(30), ); ); email varchar(30), Dopo aver creato queste pagine si andrà a creare una pagina che riunisca tutte username quelle create varchar(30), in precedenza che sarà destinata come index dell amministratore, dove dopo il suo acces so potrà password decidere varchar(30), cosa effettuare all interno dell archivio. ); Con il successivo passaggio inizieremo a creare la pagina principale o home del sito di e-commerce che andremo a chiamare home.html, in questa pagina troveremo un menu iniziale con i corrispettiv i collegamenti che collegheranno le pagine secondarie, una zona di login e registrazione clienti e una zona dove l amministratore del sito potrà inserire delle notizie sul negozio (noi abbiamo inserito delle offerte date dall ipermercato). 5

Oltre alla home.html saranno da creare le pagine secondarie come le pagine dei prodotti che potrete creare a vostro piacimento, la pagina Dove siamo, la pagina Contatti e infine la pagina dell Area amministratore dove l amministratore potrà accedere alla sua area. 6

Login amministratore Per questa pagina abbiamo creato inizialmente all interno di un form, che verrà collegato alla pagina successiva, le caselle di input dove andare a scrivere password e username,come si può vedere dall immagine sopra. Nella seconda pagina abbiamo per prima cosa inizializzato le variabili inserite nel form, e successivamente attraverso un ciclo di iterazione (if ($user=='admin' && $pass=='admin') abbiamo controllato che le variabili inserite siano uguali a quelle stabilite dal programma. Se erano uguali la pagina avrebbe fatto entrare l amministratore nella sua area altrimenti l avrebbe rimandato alla pagina di accesso. Registrazione utente Per la registrazione si è usato un semplice programma di inserimento dei dati all interno del database creato. Per prima cosa si è creato sempre un form con delle caselle di input in cui inserire i dati dell utente e inviarlo a una pagina successiva che avrebbe controllato i dati e inseriti nella tabella attraverso comandi SQL $sqlinter = "insert utenti"; $sqlinter.= "(username, password, name, cognome, indirizzo, email)"; $sqlinter.= " values "; $sqlinter.= "('$username', '$password', '$name', '$cognome', '$indirizzo', '$email')";. Login utente Inserendo password e username in un form i dati saranno inviati a un'altra pagina che controllerà attraverso una selezione dalla tabella utenti ($sql="select * FROM $tbl_name WHERE username='$username' and password='$password'";) se queste variabili inserite corrispondono a qualche record all interno della tabella. Se la variabile $count sarà uguale a uno cioè il programma avrà trovato un record uguale alle variabili inserite, l utente verrà fatto passare alla pagina successiva altrimenti sarò fatto tornare alla pagina principale. Carrello Per l acquisto dei prodotti, dopo aver fatto una visualizzazione dei prodotti con una selezione (radio), bisognerà creare un programma che permetterà, attraverso una casella di testo, di scegliere la quantità da acquistare e, una volta inserita passeremo l istruzione in un terzo programma dove la quantità inserita sarà detratta dalla quantità esistente in magazzino attraverso una sottrazione e aggiornare la quantità in magazzino con la quantità presente dopo l acquisto. ($sqlinterr= update prodotti set quanti='$ris' where codpro= $codacc ";). 7

LINGUAGGIO UTILIZZATO Nella nostra creazione del database e delle pagine abbiamo utilizzato due linguaggio informatici che sono il PHP e il SQL. Il PhP è un linguaggio di programmazione che può essere ospitato dentro una pagina HTML; a differenza di Javascript, PhP è un linguaggio server-side nel senso che viene eseguito sul server e non sul computer dell utente. Invece il linguaggio SQl è un linguaggio di interrogazione dei database, per leggere modificare o gestire dei dati inseriti in un supporto. L I S T I N G D E L P R O G R A M M A INSERIMENTO UTENTI Utenti_1.php <html> <head> <title>inserimento utenti</title> </head> <body> <?php echo "Inserire i dati dell'utente e inviare il form"; echo "<form action='utenti_2.php' method='post'>"; echo "<input name='name' size='30' maxlength='30'>nome cliente<br>"; echo "<input name='cognome' size='30' maxlength='30'>nome cliente<br>"; echo "<input name='indirizzo' size='30' maxlength='200'>via cliente<br>"; echo "<input name='email' size='30' maxlength='100'>email cliente<p>"; echo "<input name='username' size='30' maxlength='12'>username<p>"; echo "<input name='password' size='30' maxlength='12'>password<p>"; echo "<input type='submit' value='invia'>"; echo "<input type='reset' value='cancella'>"; echo "</form>";?> </body> 8

</html> Utenti_2.php <html> <head> <title>inserimento utenti</title> </head> <body> <?php // Inizializzazione delle variabili $name=$_post['name']; $cognome=$_post['cognome']; $email=$_post['email']; $indirizzo=$_post['indirizzo']; $username=$_post['username']; $password=$_post['password']; // Connessione al DB MYSQL $db=mysql_connect("localhost","root"); // Creazione del comando SQL per l'inserimento dei dati $sqlinter = "insert utenti"; $sqlinter.= "(username, password, name, cognome, indirizzo, email)"; $sqlinter.= " values "; $sqlinter.= "('$username', '$password', '$name', '$cognome', '$email','$indirizzo')"; 9

// Invio dei dati alla tabella attori del db sito mysql_db_query("sito", $sqlinter); // Verifica che i dati siano stati inseriti correttamente $num=mysql_affected_rows(); // Controllo che il record sia stato inserito if ($num>0) echo "Nuovo record inserito correttamente.<p>"; else echo "ERRORE!!! Record non inserito<p>"; // Chiusura del database mysql_close($db); // Invio alla pagina di digitazione dati echo "Ritorno alla pagina <a href='utenti_1.php'>utenti</a>";?> </body> </html> ANNULLAMENTO UTENTI Utenti_a1.php <html> <head> <title>annullamento utenti</title> </head> <body> Selezionare il record da cancellare:<p> <form action="utenti_a2.php" method="post"> <?php // Connessione al database MySQL $db=mysql_connect("localhost","root"); // Creazione della variabile per l'interrogazione $sqlinterr ="select * from utenti "; // Esecuzione dell'interrogazione $res=mysql_db_query("sito",$sqlinterr); 10

// Numero di record estratti dall'interrogazione $num=mysql_num_rows($res); // Intestazione della tabella echo "<table border='1' align='center'> <tr> <td>id</td> <td>username</td> <td>password</td> <td>nome cliente</td> <td>cognome cliente</td> <td>indirizzo cliente</td> <td>email cliente</td> </tr>"; // Visualizzazione dei record estratti for ($i=0; $i<$num; $i++) { $ID=mysql_result($res,$i,"ID"); $username=mysql_result($res,$i,"username"); $password=mysql_result($res,$i,"password"); $name=mysql_result($res,$i,"name"); $cognome=mysql_result($res,$i,"cognome"); $email=mysql_result($res,$i,"email"); $indirizzo=mysql_result($res,$i,"indirizzo"); // Visualizzazione della riga con radio echo "<tr> <td><input type='radio' name='selezi' value='$id'></td>"; echo " <td>$id</td> <td>$username</td> <td>$password</td> <td>$name</td> <td>$cognome</td> <td>$email</td> <td>$indirizzo</td> </tr>"; } 11

// Chiusura della tabella echo "</table>"; // Chiusura del database mysql_close($db);?> <p> <input type="submit" value="cancellare il record"> </form> </body> </html> Utenti_a2.php <html> <head> <title>cancellazione del record utenti selezionato</title> </head> <body> 12

<?php // Inizializzazione delle variabili $selezi=$_post['selezi']; if ($selezi) { // Controllo che l'utente abbia selezionato il record da cancellare // Connessione al database MySQL $db=mysql_connect("localhost", "root"); // Creazione del comando sql di cancellazione $sqlinterr="delete from utenti where"; $sqlinterr.=" ID='$selezi'"; // Invio del comando SQL $res=mysql_db_query("sito", $sqlinterr); // Risultato della cancellazione $num=mysql_affected_rows(); if ($num>0)echo "Record cancellato<p>"; else echo "Record non cancellato<p>"; // Chiusura database mysql_close($db); } else echo "Non è stato selezionato nessun record<p>";?> <a href="utenti_a1.php">ritorna alla pagina precedente</a><p> </body> </html> MODIFICA UTENTI Utenti_m1.php <html> <head> <title>modifica tabella utenti</title> </head> 13

<body> <?php echo "<h2><center>selezionare il record da modificare</center></h2>"; echo "<form action='utenti_m2.php' method='post'>"; // Connessione al DB MySQL $db=mysql_connect("localhost","root"); /* Costruzione della variabile $sqlinterr per la visualizzazione dei record */ $sqlinterr = "select * from utenti"; // Esecuzione del comando di interrogazione $sqlinterr $res=mysql_db_query("sito",$sqlinterr); $num=mysql_num_rows($res); // Inizio della tabella echo "<table border='1' align='center'>"; // Titolo echo "<tr> <td>id</td> <td>username</td> <td>password</td> <td>nome</td> <td>cognome</td> <td>email</td> <td>indirizzo</td> </tr>"; // Estrapolazione dei valori degli attributi for ($i=0;$i<$num;$i++) { $ID=mysql_result($res,$i,"ID"); $username=mysql_result($res,$i,"username"); $password=mysql_result($res,$i,"password"); $name=mysql_result($res,$i,"name"); $cognome=mysql_result($res,$i,"cognome"); $email=mysql_result($res,$i,"email"); $indirizzo=mysql_result($res,$i,"indirizzo"); // Visualizzazione degli attributi in tabella 14

echo "<tr> <td><input type='radio' name='selezi' value='$id'></td> <td>$id</td> <td>$username</td> <td>$password</td> <td>$name</td> <td>$cognome</td> <td>$email</td> <td>$indirizzo</td> </tr>"; } echo "</table>"; // Chiusura del DB MySQL mysql_close($db); // Bottone per l'invio dei dati a utenti_m2.php echo "<p><center><input type='submit' value='record da modificare'></center>"; echo "</form>";?> </body> </html> 15

Utenti_m2.php <html> <head> <title>modifica tabella utenti</title> </head> <body> <?php // Definizione delle variabili $selezi=$_post['selezi']; if ($selezi) { // Connessione al DB MySQL $db=mysql_connect("localhost","root"); /* Costruzione della variabile $sqlinterr per la visualizzazione dei record */ $sqlinterr = "select * from utenti "; $sqlinterr.= "where utenti.id='$selezi'"; 16

// Esecuzione del comando select $res=mysql_db_query("sito",$sqlinterr); //$num=mysql_num_rows($res); // Lettura del contenuto del record trovato $ID_old=mysql_result($res,0,"ID"); $username_old=mysql_result($res,0,"username"); $password_old=mysql_result($res,0,"password"); $name_old=mysql_result($res,0,"name"); $cognome_old=mysql_result($res,0,"cognome"); $email_old=mysql_result($res,0,"email"); $indirizzo_old=mysql_result($res,0,"indirizzo"); // Creazione della mappa a video per la modifica echo "<h3><center>gestione utenti: modifica</center></h3><p>"; echo "<form action='utenti_m3.php' method='post'>"; echo "<input name='id_new' value='$id_old'> ID<br>"; echo "<input name='username_new' value='$username_old'> Username<br>"; echo "<input name='password_new' value='$password_old'> Password<br>"; echo "<input name='name_new' value='$name_old'>nome cliente<p>"; echo "<input name='cognome_new' value='$cognome_old'> Cognome cliente<p>"; echo "<input name='email_new' value='$email_old'> Email<p>"; echo "<input name='indirizzo_new' value='$indirizzo_old'> Indirizzo<p>"; echo "<input type='hidden' name='id' value='$selezi'>"; echo "<input type='submit' value='modifica'> "; echo "<input type='reset' value='cancella'>"; echo "</form>"; // Chiusura del DB MySQL mysql_close($db); } else echo "ERRORE!!! Selezionare un utente...";?> </body> 17

</html> Utenti_m3.php <html> <head> <title>modifica tabella utenti</title> </head> <body> <?php // Inizializzazione delle variabili $ID_new=$_POST['ID_new']; $username_new=$_post['username_new']; $password_new=$_post['password_new']; $name_new=$_post['name_new']; $cognome_new=$_post['cognome_new']; $email_new=$_post['email_new']; $indirizzo_new=$_post['indirizzo_new']; $id=$_post['id']; 18

// Connessione al DB MySQL $db=mysql_connect("localhost","root"); /* Costruzione della variabile $sqlinterr per la modifica del record selezionato */ $sqlinterr = "update utenti set "; $sqlinterr.=" ID='$ID_new',"; $sqlinterr.=" username='$username_new',"; $sqlinterr.=" password='$password_new',"; $sqlinterr.=" name='$name_new' "; $sqlinterr.=" cognome='$cognome_new' "; $sqlinterr.=" email='$email_new' "; $sqlinterr.=" indirizzo='$indirizzo_new' "; $sqlinterr.= "where ID='$ID'"; // Esecuzione del comando $sqlinterr mysql_db_query("sito",$sqlinterr); // N. di record soggetti alla modifica $num = mysql_affected_rows(); // Se il record è stato trovato viene modificato. if ($num>0) echo "Record modificato.<p>"; else echo "ERRORE!!! Record non modificato.<p>"; // Chiusura del DB MySQL mysql_close($db);?> </body> </html> INTERROGAZIONE UTENTI Utenti_q1.php <html> <head> <title>consultazione tabella utenti</title> </head> 19

<body> <?php // Apertura del Database MySQL) $db=mysql_connect("localhost","root"); // Costruzione della variabile da eseguire in SQL $sqlinterr = "select * from utenti "; /* Apertura del DB sito inserito nel Data Base MySQL */ // $db_selected = mysql_select_db('sito', $db); // Esecuzione del comando di interrogazione SQL $res=mysql_db_query("sito",$sqlinterr); $res=mysql_query($sqlinterr); // N. di record estratti dal comando SQL $num=mysql_num_rows($res); // Costruzione dell'intestazione della tabella echo "<h2><center>consultazione utenti</center></h2>"; echo "<table border='3' align='center'> <tr> <td>id</td> <td>username</td> <td>password</td> <td>nome</td> <td>cognome</td> <td>email</td> <td>indirizzo</td> </tr>"; // Visualizzazione del contenuto dei record trovati for ($i=0;$i<$num;$i++) { $ID=mysql_result($res,$i,"ID"); $username=mysql_result($res,$i,"username"); $password=mysql_result($res,$i,"password"); $name=mysql_result($res,$i,"name"); $cognome=mysql_result($res,$i,"cognome"); $email=mysql_result($res,$i,"email"); 20

$indirizzo=mysql_result($res,$i,"indirizzo"); // Visualizzazione dei dati letti echo "<tr> <td>$id</td> <td>$username</td> <td>$password</td> <td>$name</td> <td>$cognome</td> <td>$email</td> <td>$indirizzo</td> </tr>"; } // Chiusura della tabella echo "</table>"; // Chiusura del Data Base MySQL mysql_close($db);?> </body> </html> TUTTI GLI ALTRI PROGRAMMI DI INSERIMENTO, MODIFICA, ANULLAMENTO,CONSULTAZIONE DELLE ALTRE TABELLE SONO UGUALI A QUESTI 21

PROGRAMMA DI LOGIN AMMINISTRATORE Loghi_1.php <?php if(isset($_post['user'])&& isset($_post['pass'])) if($_post['user']=='admin'&& $_POST['pass']=='admin') { $_SESSION['user']=$_POST['user']; @header("location: indexamm.html"); } else @header("location: amm.html?err=true");?> Programma di LOGIN CLIENTE Checklogin.php <?php $host="localhost"; // Host name $username="root"; // Mysql username $password=""; // Mysql password $db_name="sito"; // Database name $tbl_name="utenti"; // Table name // Connect to server and select databse. mysql_connect("$host", "$username", "$password")or die("cannot connect"); mysql_select_db("$db_name")or die("cannot select DB"); // username and password sent from form $username=$_post['username']; $password=$_post['password']; // To protect MySQL injection (more detail about MySQL injection) $username = stripslashes($username); $password = stripslashes($password); $username = mysql_real_escape_string($username); 22

$password = mysql_real_escape_string($password); $sql="select * FROM $tbl_name WHERE username='$username' and password='$password'"; $result=mysql_query($sql); // Mysql_num_row is counting table row $count=mysql_num_rows($result); // If result matched $myusername and $mypassword, table row must be 1 row if($count==1){ // Register $myusername, $mypassword and redirect to file "login_success.php" session_register("username"); session_register("password"); header("location:paginacliente.php"); } else { echo "Wrong Username or Password"; }?> Successivamente nella pagina potretta andrà inserito questo script <? session_start(); if(!session_is_registered(username)){ header("location:paginacliente.php"); }?> Programma di LOGOUT <?php if(isset($_get['logout'])) { session_start(); @session_destroy(); $_SESSION=array(); @header("location: indexamm.html"); } else { 23

@header("location: amm.html"); }?> MANUALE D USO ITALIANO -web server utilizzato Durante lo sviluppo del programma abbiamo stabilito che la collocazione del database sarebbe stato su un web server che può essere easyphp o xampp. Xampp è un software contente il server web apache e il database Mysql. Noi creeremo il nostro database con la sua relativa tabella su il server apache. Per scaricare xampp cliccate su questo link: http://www.apachefriends.org/it/xampp.html dal link sopra scaricate e installate il software. Per questo programma però per farlo girare in modo coretto è necessaria la versione1.7.3 di xampp se no appena avvierete il programma vi risulteranno delle avvertenze. Il programma non andrà installato come gli altri programmi nella cartella programmi sul disco locale C ma direttamente sul disco locale C. Alla fine dell installazione apparirà la seguente finestra: Da questa finestra voi dovrete cliccare sul tasto start del modulo apache per attivarlo da qual punto in poi potrete creare tutti i database che volete. Per facilitare la creazione del database e della tabella per l inserimento dei comandi sql utilizzerete l interfaccia grafica (tool grafico) di xampp per creare il database. Per prima cosa aprite un browser e inserite il link: http://127.0.0.1/phpmyadmin/. 24

Dovreste avere un output come questo: Grazie a questa interfaccia riuscirete a gestire in maniera più semplice il vostro database. Dopo avere creato tutto il programma, per utilizzarlo bisogna entrare con un browser sul server dove si è inserito il programma digitando il suo indirizzo IP e dovrete visualizzare la HOME (pagina principale). Da li potrete iniziare ha usare il vostro sito di e-commerce. 25

HOME LOGIN REGISTRAZIONE Nella home si può accedere attraverso il menu in alto alle pagine secondarie Oppure se non si è ancora registrati al sito, registrarsi nella zona in basso a destra, e alla fine entrare con il proprio account attraverso la zona in alto a destra. In questa pagina l amministratore potrà accedere alla sua area personale. 26

INGLESE web-server used During development of the program we have established that the location of the database would be on a web server that can be easyphp or xampp. XAMPP is a software containing the Apache web server and MySQL database. We will create our database with its corresponding table on the apache server. To download xampp click on this link: http://www.apachefriends.org/it/xampp.html download from the link above and install the software. For this program, howev er, to turn it so the choir is required to XAMPP versione1.7.3 if not just start the program there will be warnings. The program will not be installed like other programs in the Programs folder on the local disk C but directly on the local disk C. At the end of the installation the following window: From this window you must click on the start button to activate apache module from which point onwards, you can create all the databases that you want. To facilitate the creation of the database and table to insert the sql commands will use the GUI (graphical tool) to create the database in xampp. First, open a browser and enter the link: http://127.0.0.1/phpmyadmin/. You should get output like this: 27

Thanks to this interface will be able to more easily manage your database. After you have created throughout the program, you must use it to get a browser on the server where you entered the program by typing its IP address and you will see the HOME (main page). From there you can start using your website has e-commerce. LOGIN REGISTRAZIONE On the home can be accessed through the menu at the top sub-pages Or if you have not yet registered with the site, register in the lower right corner, and eventually enter into your account through the area at the top right. 28

In this page the administrator can access your personal area 29