Quotare un messaggio

frankiedeguello

Utente Attivo
24 Mag 2005
42
0
0
49
Salve a tutti!

Sto costruendo un Forum in ASP VBScript, ho creato molte delle funzioni "ordinarie" del Forum (aggiungi discussione, ultimo messaggio, autore, aggiungi messaggio ecc ecc) vorrei completare il tutto con una cosa che finora sono riuscito solo a fare in maniera molto "macchinosa"!

Sto parlando del REPLY WITH QUOTE o come volete, la mia domanda è: qual'è il metodo migliore per realizzare una risposta con citazione? Esiste un tutorial in merito, in rete ho trovato molto poco e sono due giorni che mi scervello, se volete potete anche descrivermi una soluzione "a parole", il mio problema è che, per ora, non sono riusciuto ad avere nemmeno una idea degna di tale nome per risolvere il tutto...

Per ora registro su database il testo del messaggio convertito in HTML da una funzione ASP ma non credo sia l'idea migliore,

se vi va aiutatemi....

Grazie:fonzie:
 
Ma perché non scarichi un forum giá fatto?
Almeno salvi tempo e le cose son fatte perfette:
con log-in, profili, permessi, posta interna ecc...
Se non ne trovi uno tu te ne consiglio uno io!
Poi la grafica la modifichi come vuoi tu! :fonzie:
 
Dusy ha scritto:
Ma perché non scarichi un forum giá fatto?
Almeno salvi tempo e le cose son fatte perfette:
con log-in, profili, permessi, posta interna ecc...
Se non ne trovi uno tu te ne consiglio uno io!
Poi la grafica la modifichi come vuoi tu! :fonzie:

Hai sicuramente ragione, ma il piacere di imparare dove lo metti?!?
Adesso sono arrivato ad un punto che da solo non riesco, quindi ho bisogno di un "guru" che mi dica come affrontare il problema...
 
Non do torto a Dusy ma anche il nostro amico che ci chiede aiuto ha ragione, ma più che il piacere di imparare, oggi, c'è il dovere e la necessità di imparare!

Mai sentito di aziende che pagano un dipendente o un consulente per modificare la grafica e i colori dello Snitz :)
 
Continuo con il mio delirio!!

Allora ho fatto questo, come già specificato nel primo post quando quoto un messaggio inserisco nel database i tag html


quindi:

nella textarea di risposta al messaggio inserisco prima e dopo il messaggio quotato

[$quote$] ... [$/quote$] le $ sono aggiuntive altrimenti il forum mi quota davvero i messaggi!

poi li sostuisco, nella pagina addetta alla registrazione sul database del record, con

Codice:
mess = request.form("textarea")
mess_1 = replace(mess,"[$quote$]","<blockquote><hr><i>")
mess_2 = replace(mess_1,"[$/quote$]","</i></hr></blockquote>")

così quello che si visualizza al momento della lettura è il messaggio quotato scritto in corsivo e compreso tra due righe,

tutto ciò (neanche a dirlo) mi sembra un po' troppo macchinoso...

voi che ne dite?
 
Complicatino, ma inizia a funzionare!

Allora con un po' di ingegno sono riuscito a tirare fuori qualcosa posto la mia idea:

il problema era dato tutto dalla doppia quotazione, infatti alla prima quotazione tutto andava bene, ma dalla seconda in poi il textarea di risposta si riempiva di tag html che rendevano tutto molto complicato e incasinato, quindi con una funzione ripulisco il messaggio dai tag html e, tramite l'utilizzo nel database di due campi (uno per i messaggi HTML e uno per i messaggi in formato testuale), per le quotazioni doppie visualizzo solo il messaggio in formato testuale (senza tags)

pagina addReplyQuote.asp
Codice:
'APRO UN RECORDSET CHE SELEZIONI SOLO IL MESSAGGIO CHE HO CITATO
set recMesQuot = Cn.Execute("select * from MESSAGGI where MESSAGGI.COD_MES="&messQuotato)

' RICHIEDO I DATI DEL TEXTAREA
mess_1 = request.form("textarea") 

' SOSTITUISCO QUOTE CON TAG HTML
mess_2 = Replace(mess_1,"[[B]quote[/B]]","<blockquote>"&autQuotato&" ha scritto:<hr><i>")
mess = Replace(mess_2,"[/quote]","</i><hr></blockquote>")' SOSTITUISCO /QUOTE CON LA CHIUSURA DEI TAG HTML

'LA VIARIABILE [B]mess[/B] SARà QUELLA CHE ANDRà REGISTRATA NEL DATABASE NEL CAMPO [B]MESSAGGIHTML[/B]

' RIMUOVO I TAGS HTML DALLA VARIBILE mess
messTxt_1 = RemoveHtmlTag(mess)

' RIMUOVO L'AUTORE DEL MESSAGGIO CHE HO CITATO
messTxt_2 = Replace(messTxt_1,""&autQuotato&" ha scritto:","")

'RIMUOVO IL MESSAGGIO CITATO, QUINDI RIMANE SOLO LA RISPOSTAALLA CITAZIONE IN FORMATO TXT
messTxt = Replace(messTxt_2,""&recMesQuot("MESSAGGIOTXT")&"","",1,1) 

'LA VARIABILE [B]messTxt[/B] SARà QUELLA CHE ANDRà REGISTRATA NEL DATABASE NEL CAMPO [B]MESSAGGITXT[/B]

il tutto funziona!
 

Discussioni simili