Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
PROGETTO ISTITUTO TECNICO INDUSTRIALE ABACUS “ASTE ON-LINE”
Il progetto proposto in esame è quello di realizzare un sito “e-commerce” di aste on-line. Dobbiamo
quindi realizzare una piattaforma che offre determinati servizi agli utenti,quali quello di poter
vendere ed acquistare oggetti sia nuovi che usati in qualsiasi momento da qualsiasi luogo
utilizzando lo strumento di internet, con diverse modalità di acquisto e di pagamento.
La vendita consiste in due parti fondamentali: vi è un venditore che mette all’asta e in vendita
l’oggetto e vi sono vari “compratori” che fanno offerte per aggiudicarsi l’oggetto in questione.
Prendiamo spunto dal famoso sito “e-commerce” E-BAY,affermato in tutto il mondo,che fu il
primo ad introdurre una particolarità interessante: i feedback che nel nostro progetto però non è
presente questa risorsa per motivi esclusivamente di tempo.
LEGGI A RIGUARDO
La regolamentazione delle aste on line private, passa attraverso due disposizioni curiosamente contraddittorie.
E’ un’opinione molto diffusa che le “aste” online siano fuorilegge. Questo almeno si desumerebbe da una
prima lettura del comma 5 del d.lgs. 114/98; che laconicamente recita: “Le operazioni di vendita all’asta
realizzate per mezzo della televisione o di altri sistemi di comunicazione sono vietate”. L’internet rientra
sicuramente fra gli “latri sistemi di comunicazione”, quindi le “aste” tramite la rete sono vietate.
In realtà la parola “asta” fa preciso riferimento ad un meccanismo nel quale c’è un soggetto (la casa d’aste)
che reperisce i beni, si fa in qualche modo garante della loro provenienza e qualità, organizza riunioni
pubbliche nelle quali un soggetto (il banditore) sollecita gli astanti a formulare un’offerta.
Quello che accade con le “aste” in rete è invece totalmente differente. Il provider si limita a creare
un’infrastruttura tecnologica nella quale gli utenti si incontrano liberamente e liberamente determinano il
prezzo del bene che intendono vendere o comprare. Secondo un modello ancora attuale e che affonda le
proprie radici nel mondo preindustriale, dove in un microcosmo le persone si relazionavano reciprocamente
valutando non solo i contenuti economici dell’offerta, ma anche l’affidabilità dell’interlocutore. Il tutto con la
garanzia del “controllo diffuso” operato dall’intera comunità: se qualcuno “sgarra” viene immediatamente
messo fuori gioco. Possiamo comprendere bene che non vi è una legge vera e propria dedica alle “aste
online” però unica cosa confortante è che sono legali le aste che vendono merce in modo legale,come se si
andassa in un negozio di dischi a fare compere.
SCHEMA CONCETTUALE (E/R)
1
UTENTE M
ASTA
1
1
M OGGETTO DI PRETE ALESSANDRO
Classe:5°B/I
19/06/2009
1
Di seguito è proposto lo schema logico/relazionare realizzato attraverso le regole di derivazione,che
consistono brevemente:
Ogni entità diventerà un’archivio
Ogni attributo di un’entità sarà un campo dell’archivio
Ogni campo deriva le caratteristiche dell’attributo dell’entità da cui deriva
L’identificatore univoco di una entità diventa chiave primaria dell’archivio
Con l’associazione(1;1) si avrà un unico archivio
Con l’associazione(1,M) avremo la chiave esterna nell’entità di arrivo
Con l’associazione(M;M) si avrà un altro archivio dove saranno presenti le chiavi delle due
entità precedenti e gli eventuali attributi.(nel nostro caso 2 nuove tabelle.)
Occorre inoltre,fare delle considerazioni riguardo le regole di normalizzazione.
Nella realizzazione dello schema e/r ho proceduto in modo tale da considerare la 3FN. Si definisce
di 3° forma normale una tabella,i cui attributi che non appartengono alla chiave devono dipendere
dall’intera chiave e non da una sola parte; dipendono quindi dalla chiave stessa.
SCHEMA LOGICO RELAZIONALE
UTENTE(utente_id,utente_nome, utente_cognome, utente_data, utente_indirizzo, utente_città,
utente_provincia, utente_cap, utente_stato, utente_email, utente_username, utente_password,
utente_avatar)
OGGETTI(oggetti_id, oggetti_titolo, oggetti_desc, oggetti_costosped, oggetti_prezzoiniziale,
oggetti_desc_metodo_sped, oggetti_provenienza, oggetti_condizione, oggetti_annuncio,
oggetti_avatar,checkbox,prezzo_compra_subito, utenti_id)
ASTA(asta_id, asta_inizio, asta_fine, asta_prezzo, asta_compra_subito, flag_end,oggetti_id)
STRUMENTI HARDWARE E SOFTWARE UTILIZZATI
Per la realizzazione e per la risoluzione del problema è stato realizzato un database con l’ausilio del
pacchetto EasyPHP che fornisce vari servizi utili per il progetto. Nella soluzione che presentiamo,
abbiamo deciso di utilizzare il linguaggio di programmazione PHP che consente di arricchire le
pagine Web di codice script che sarà eseguito direttamente sul server. Attravero il MYSQL è stato
realizzato il database,poi è stato implementato il codice PHP utilizzando l’editor di testo
Notepad++,ed infine pubblicato ed eseguito con il server apache,di cui è dotato il pacchetto.
DI PRETE ALESSANDRO
Classe:5°B/I
19/06/2009
2
QUERY SIGNIFICATIVE
1. Utilizzata per ricercare gli oggetti interessati
$ricerca è passato con il metodo POST tramite un form che viene confrontato con il titolo
dell’oggetto.
$q="SELECT *
FROM oggetti
WHERE oggetti_titolo='".$ricerca."'"; esegue
$risp=mysql_query($q) or die(mysql_error()); la query e se vi è l’errore lo stampa
2.Per poter fare il login dell’utente estraiamo i dati di autenticazione per poi effettuare i vari
controlli.
$q= "SELECT utenti_username,utenti_password
FROM utenti
WHERE LOWER(utenti_username)='".$utenti_username."'";
3.Per la modifica dell’oggetto abbiamo utilizzato l’UPDATE
$q=" UPDATE oggetti
SET oggetti_titolo='".$oggetti_titolo."',
oggetti_desc='".$oggetti_desc."',
oggetti_costosped='".$oggetti_costosped."',
oggetti_prezzoiniziale='".$oggetti_prezzoiniziale."',
WHERE oggetti_id='".$id."' ";
4.Selezione degli oggetti messi a vendita da un particolare utente,in questo caso dall’utente loggato
$utente=$_SESSION["username"];
$q=" SELECT *
FROM oggetti as o ,utenti as u
WHERE o.utenti_id=u.utenti_id
AND utenti_username='".$utente."' "; DI PRETE ALESSANDRO
Classe:5°B/I
19/06/2009
3
DEFINIZIONE DELLE RELAZIONI IN LINGUAGGIO SQL
CREATE TABLE UTENTI(
utente_id INT(2) NOT NULL,
utente_nome VARCHAR(15),
utente_cognome VARCHAR(20),
utente_data VARCHAR(12),
utente_indirizzo VARCHAR(20),
utente_città VARCHAR(20),
utente_provincia VARCHAR(20),
utente_cap INT(5),
utente_stato VARCHAR(20),
utente_email VARCHAR(20),
utente_username VARCHAR(20),
utente_password VARCHAR(20),
utente_avatar VARCHAR(20),
PRIMARY KEY (utente_id) )
on delete restrict
on update cascade;
CREATE TABLE OGGETTI(
oggetti _id INT(2) NOT NULL,
oggetti_titolo VARCHAR(15),
oggetti _desc VARCHAR(20),
oggetti _costosped VARCHAR(12),
oggetti _prezzoiniziale VARCHAR(20),
oggetti _desc_metodo_sped VARCHAR(20),
oggetti _provenienza VARCHAR(20),
oggetti _condizione INT(5),
oggetti _annuncio VARCHAR(20),
oggetti _avatar VARCHAR(20),
oggetti_checkbox BOOL(),
oggetti _prezzo_compra_subito VARCHAR(20),
utenti_id INT(5),
PRIMARY KEY (oggetti_id) )
FOREIGN KEY (utenti_id)
on delete restrict
on update cascade;
CREATE TABLE ASTA(
asta_id INT(2) NOT NULL,
asta_inizio VARCHAR(30),
asta_fine VARCHAR(20),
asta_prezzo VARCHAR(12),
asta_compra_sub VARCHAR(20),
flag_end VARCHAR(20),
oggetti_id INT(2)
PRIMARY KEY (asta_id) )
on delete restrict
on update cascade; DI PRETE ALESSANDRO
Classe:5°B/I
19/06/2009
4
SCHEMA FUNZIONALE Index.php
Login.php
Registrazione.php
Profilo.php Vendi.php
Oggetto.php
modifica.php
paga.php mod_ogg.php asta.php
DI PRETE ALESSANDRO
Classe:5°B/I
19/06/2009
5
SCHERMATE SIGNIFICATIVE
Index.php
Registrazione.php DI PRETE ALESSANDRO
Classe:5°B/I
19/06/2009
6
Login.php
Profilo.php DI PRETE ALESSANDRO
Classe:5°B/I
19/06/2009
7
Modifica.php
Vendi.php DI PRETE ALESSANDRO
Classe:5°B/I
19/06/2009
8
Oggetto.php
Mod_ogg.php DI PRETE ALESSANDRO
Classe:5°B/I
19/06/2009
9