Come realizzare un Forum di Discussione - Argomenti
Nella pagina forum.asp possiamo adesso visualizzare i
topic presenti nel db, vediamo ora come visualizzare gli argomenti.
Visualizzazione degli Argomenti Ecco come apparirà la tabella degli argomenti:
Figura 4.1:La tabella degli argomenti. Per prima cosa creiamo un link alla pagina principale del forum (quindi a forum.asp) e recuperiamo il codice del topic scelto in precedenza dall'utente e che ci ha portato in questa sezione: <% In questo modo Arg conterrà il codice del topic a cui stiamo facendo riferimento per estrarre i vari argomenti e messaggi in questa sezione. Ora per far sapere all'utente in che topic si trova ne ricaviamo il nome tramite il codice appena recuperato: select TOPIC.TOPIC,COD_TOP from TOPIC where TOPIC.COD_TOP="&Arg Ora, come nella sezione che visualizzava i topic dovremo estrarre gli argomenti associati al topic di riferimento: select * from ARGOMENTI where ARGOMENTI.COD_TOP="&Arg e nel ciclo di lettura e stampa dei vari record dovremo effettuare una sottointerrogazione per recuperare l'ultimo messaggio, e il numero messaggio di ogni argomento: select top 1
(select COUNT(*) from (MESSAGGI inner join
ARGOMENTI on MESSAGGI.COD_ARG=ARGOMENTI.COD_ARG) WHERE
ARGOMENTI.COD_ARG="&rec("COD_ARG")&")as
NMES,MESSAGGI.AUTORE,MESSAGGI.DATA,ARGOMENTI.COD_ARG from ARGOMENTI
inner join MESSAGGI on ARGOMENTI.COD_ARG=MESSAGGI.COD_ARG
where ARGOMENTI.COD_TOP="&arg&"
order by DATA Ora abbiamo tutti i dati che ci servono per creare la nostra tabella come quella della figura; da ricordare che quando visualizziamo i vari argomenti dobbiamo creare un link alla sezione messaggi: <a href="forum.asp?tab=mes&cod=<%=rec("COD_ARG")%>"><%=rec("ARGOMENTO")%></a> Quando stampiamo il numero di risposte ad un certo argomento possiamo stampare il risultato del conteggio -1 visto che possiamo fare a meno di contare il messaggio di partenza dato che non è una risposta. Nella prossima lezione vedremo l'ultima sezione
della pagina forum.asp che permetterà di leggere i messaggi.
|
||||||||||||||||||||||||||||||