Salve ragazzi,
vi spiego il problema. Ho un database con diverse tabelle. Allora, una chiamata utenti, una organizzatori, una eventi e una ordini. In utenti vengono memorizzati i dati che degli utenti che si registrano nel sito. IN organizzatori le organizzazioni che intendono pubblicizzare i propri eventi. Pertanto la tabella eventi contiene tutti i dati relativi agli eventi inseriti dagli organizzatori. L'utente può quindi acquistare qualsiasi evento e l'ordine viene inserito nella tabella ordini. Per farvi capire posto le 4 tabelle
CREATE TABLE `eventi` (
`event_id` int(5) unsigned NOT NULL auto_increment,
`organizzatore_id` int(3) NOT NULL,
`evento` text NOT NULL,
`luogo` text NOT NULL,
`giorno` int(2) NOT NULL default '',
`mese` int(2) NOT NULL default '',
`anno` int(4) NOT NULL default '',
`ora` int (4) NOT NULL default '',
`oraporte` time NOT NULL,
`descrizione` text NOT NULL,
`biglietti` int(3),
`disponibilita` int(3),
`prezzo` decimal (5,2),
`comunicazioni` text NOT NULL,
`autore` varchar(50) NOT NULL default '',
`data` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`nome` varchar(50) NOT NULL default '',
`size` varchar(25) NOT NULL default '',
`type` varchar(25) NOT NULL default '',
`immagine` longblob NOT NULL,
`pub` int(1) NOT NULL default '0',
PRIMARY KEY (`event_id`)
)
CREATE TABLE `ordini` (
`ordine_id` int(5) NOT NULL auto_increment,
`utente_id` int(5) NOT NULL,
`event_id` int(5) NOT NULL,
`numero` int(5),
`totale` decimal (5,2),
`data` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (`ordine_id`)
)
CREATE TABLE `organizzatori` (
`organizzatore_id` int(3) NOT NULL auto_increment,
`username` varchar(30) NOT NULL default '',
`password` varchar(34) NOT NULL,
`confermapassword` varchar(34) NOT NULL,
`organizzazione` varchar(30) NOT NULL default '',
`partitaiva` varchar(30) NOT NULL default '',
`codicefiscale` varchar(30) NOT NULL default '',
`cap` int(10) NOT NULL default '',
`provincia` varchar(30) NOT NULL default '',
`indirizzo` varchar(30) NOT NULL default '',
`civico` int(5) NOT NULL default '',
`mail` char(255) NOT NULL default '',
`data` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`ip` char(15) NOT NULL default '',
PRIMARY KEY (`organizzatore_id`),
UNIQUE KEY `id` (`organizzatore_id`),
KEY `id_2` (`organizzatore_id`)
)
CREATE TABLE `utenti` (
`utente_id` int(3) NOT NULL auto_increment,
`username` varchar(30) NOT NULL default '',
`password` varchar(34) NOT NULL,
`confermapassword` varchar(34) NOT NULL,
`nome` varchar(30) NOT NULL default '',
`cognome` varchar(30) NOT NULL default '',
`giorno` int(2) NOT NULL default '',
`mese` int(2) NOT NULL default '',
`anno` int(4) NOT NULL default '',
`cap` int(10) NOT NULL default '',
`provincia` varchar(30) NOT NULL default '',
`indirizzo` varchar(30) NOT NULL default '',
`civico` int(5) NOT NULL default '',
`mail` char(255) NOT NULL default '',
`data` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`ip` char(15) NOT NULL default '',
PRIMARY KEY (`utente_id`),
UNIQUE KEY `id` (`utente_id`),
KEY `id_2` (`utente_id`)
)
Ora, cosa voglio fare? Ho creato un'area privata per gli organizzatori. IN quest'area vorrei che vi fosse un file che, per ogni evento da lui inserito, gli visualizzi quanti biglietti ha venduto per quell'evento. Come vedete nella tabella ordini troviamo un campo chiamato numero. Altro non è che il numero di biglietti acquistato da un utente tramite un form. Poi nella tabella eventi trovate il campo biglietti. Questo è il totale di biglietti che l'organizzatore inserisce in database. Il numero di biglietti venduto per un determinato evento altro non è che il numero di biglietti acquistato per quell'evento da tutti gli utenti.
Come mettere in relazione le diverse tabelle?