praticamente io ho una tabella menu e una tabella link che gestisco dall'area risevata
inserisco il menu e poi il link collogandolo al menu
la struttura della tabella menu
Codice:
TABLE `menu` (
`idmenu` int(10) unsigned NOT NULL AUTO_INCREMENT,
`menu` varchar(50) NOT NULL,
`iduser` int(10) NOT NULL,
`ordine` int(10) NOT NULL,
PRIMARY KEY (`idmenu`),
UNIQUE KEY `menu` (`menu`),
UNIQUE KEY `ordine` (`ordine`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
TABLE `link_menu` (
`idlink` int(10) unsigned NOT NULL AUTO_INCREMENT,
`nome_link` varchar(50) NOT NULL,
`idmenu` int(10) NOT NULL,
`visite` int(20) NOT NULL DEFAULT '0',
`iduser` int(10) NOT NULL,
PRIMARY KEY (`idlink`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
dalla query mi dovrebbe uscire
Codice PHP:
<tr>
<td><?php echo $menu?></td>
</tr>
<tr>
<td><?php echo $link ?></td>
</tr>
//il tutto dentro un ciclo che mi stampi il menu con i link collegati
io all'inizio avevo fatto in un altro modo
avevo fatto due query
la prima che mi leggeva i menu e la seconda che mi i link
query
while
{
recupero i dati menu (idmenu, nomemenu)
stampo nome menu
query2(legge i dati dai link con condizione where idmenu=$idmenu)
stampo i dati
}
funziona ma ha un prob. i risultati dei menu li ordina mentre i risultati dei link non li ordina.
Ho postato il codice su un altro form e mi hanno detto di usare JOIN perchè è piu veloce l'esecuzione.
Solo che con JOIN non riesco a stampare i risultati come voglio io.
dal ciclo dovrebbe uscire
menu
link
link
ecc.
menu2
link2
link2
e cosi via
mentre mi esce
menu->link
menu->link
menu->link
menu2->link2
menu2->link2
menu2->link2
non so se mi sono spegato bene ma spero di essere stato chiaro