Ciao a tutti eccomi di nuovo,
per il momento ho steso la struttura del database.
--
-- Struttura della tabella commenti
CREATE TABLE IF NOT EXISTS commenti (
ID_Commento int(11) NOT NULL AUTO_INCREMENT,
ID_Post int(11) NOT NULL,
ID_Utente int(11) NOT NULL,
Comm_Testo varchar(255) NOT NULL,
Visualizzato tinyint(1) NOT NULL,
PRIMARY KEY (ID_Commento)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
--
-- Dump dei dati per la tabella commenti
--
-- Struttura della tabella post
CREATE TABLE IF NOT EXISTS post (
ID_Post int(11) NOT NULL AUTO_INCREMENT,
Data_Pubblicazione date NOT NULL,
Titolo varchar(30) NOT NULL,
Testi text NOT NULL,
Visualizzato tinyint(1) NOT NULL,
ID_Utente int(11) NOT NULL,
PRIMARY KEY (ID_Post)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
--
-- Dump dei dati per la tabella post
--
-- Struttura della tabella utenti
CREATE TABLE IF NOT EXISTS utenti (
ID_Utente int(11) NOT NULL AUTO_INCREMENT,
Nome varchar(40) NOT NULL,
Cognome varchar(40) NOT NULL,
Email varchar(40) NOT NULL,
Sesso varchar(8) NOT NULL,
Data_Nascita datetime DEFAULT NULL,
PRIMARY KEY (ID_Utente)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
--
-- Dump dei dati per la tabella utenti
Per quanto riguarda la possibilità di rendere gli utenti amici di altri, come avviene per facebook per intenderci, pensavo di procedere così:
Essendo la relazione Utenti - Amici una relazione Molti a Molti, pensavo di creare una tabella
AMICI
ID-amico
nome
cognome
sesso
Dopodichè porre in relazione le tabelle Utenti ed Amici tramite una terza tabella chiamata:
Amicizia
ID-utente
ID-amico
Stato amicizia (campo booleano '1' amici '0' non amici)
A questo punto mi chiedevo: le due tabelle utenti ed amici dovrebbero essere popolate entrambe al momento della registrazione utente (in quanto uno può essere utente ed amico). L'unica cosa che a questo punto mi lascia un po' perplesso è lo stato amicizia che può essere popolato quando i due diventano amici, magari viene popolato impostando lo stato su '0' quando il primo utente chiede l'amicizia e portato poi ad '1' se l'altro utente accetta.
Qualcuno può darmi qualche consiglio? Sono disponibilissimo a proseguire il progetto postando il codice man mano che lo realizzo.
Ciao
Enrico