- Home
- Categorie
- Coding e Sistemistica
- PHP
- Relazione tra tre tabelle
-
Relazione tra tre tabelle
Salve a tutti
Vi faccio un prologo per inoltrarvi nel caso specifico.
Allora, nel gestionale interno che sto facendo in php ogni utente che logga al suo interno avrà la possibilità di gestire determinati dati posti su delle tabelle specifiche.
Queste tabelle saranno abilitate o no alla visualizzazione e modifica da parte dell'utente .La struttura attuale:
(tabella contenente gli utenti del gestionale)
**t_utente
**campo id_utente, int (50) , no-null. primary key.
campo nome_utente, varchar(255), allownull.(tabella contenente i nomi delle tabelle presenti sul medesimo database).
t_nometabelle
campo id_tabella, int (50), no-null, primary key.
campo nome_tabella, varchar(255) no-null.
campo alias , varchar(150) allownull.(tabella contenente i valori di riferimento , risolvibile con la frase "Quali tabelle per quali utenti vado a mostrare"
t_mostratabella
campo id, int(50), no-null, primary key
campo userid, int(10), no null
campo tableid,int(20), no nullAdesso come sono impostati i valori all'interno di quest'ultima tabella?
Praticamente avrò una relazione tra:
t_mostratabella.userid = t_utente.id_utente
e
**t_mostratabella.tableid = t_nometabelle.id_tabella**Ad esempio vedo i dati così:
id:1, userid:4, tableid:2
id:2, userid:4, tableid:3
id:3, userid:4, tableid:5
id:4, userid:5, tableid:2
id:5, userid:5, tableid:6
id:6, userid:6, tableid:2Come vedete c'è la relazione di n:n
Ora qual'è il mio problema?
Mi servirebbe sapere la stringa SQL per poter richiamare le tabelle.
La clausola "where" o chi per essa si dovrà basare sul nome dell'user.
Ho provato qualcosa anche con l'innerjoin però non sono sicuro del risultatoComunque sia , finendo, la domanda implicita è questa:
"Mostra le tabelle che appartengono all'user chiamato xxxxx"
Grazie per l'attenzione!