- Home
- Categorie
- Coding e Sistemistica
- Altri linguaggi per il web
- Rich Text Editor
-
Rich Text Editor
Buongiorno, sto cercando uno script che mi permetta di formattare il testo in una textarea simile a quello in cui si scrivono i messaggi nel presente forum.
Dovrebbe essere semplice, ovvero permettere la formattazione in termini di:
- colore testo
- grassetto e corsivo
- collegamento ipertestuale
- allineamento (sx, dx, centrato, giustificato)
- lista ordinata e non
Il testo formattato dovrebbe essere poi salvato in un campo di tabella su db access e poi richiamato con asp su pagina di un sito.
Ringrazio per l'attenzione.
-
fckeditor? Troppo complicato?
-
ciao, ti ringrazio per il consiglio.Ho trovato uno script più semplice che fa al caso mio: html Area.Non so se lo conosci....La mia domanda ora, a prescindere dallo script utilizzato, è come far passare i dati dalla textarea formattata ad un campo di tabella su db access.Credo che passandolo così com'è mi salvi anche i tag html che si vedrebbero poi sulla pagina del sito che richiama quel campo.
-
Scusami, ma se ti serve il rich text editor, i tag html ce li devi avere per forza! Senò sarebbe testo normale!
-
certo, ma se ad esempio salvo su campo db ciao quando richiamo questo campo sulla pagina del sito visualizzo ciao e non ciao in bold.a meno che debba usare su db un tipo di campo particolare...???
-
no nel db usi un campo testo, e ci salvi <b>ciao</b>
-
ciao Cali, ala fine, dopo vari tentativi di configurazione di htmlArea, mi sono accorto che praticamente funziona solo, e male, su IE.
Mi sono lanciato sull'fck da te consigliato e, devo dire, che a prima vista sembra abbastanza complesso da gestire, soprattutto per un neofita come il sottoscritto.
L'unica cosa di cui mi sono reso conto controllando i file di esempio in asp è che non viene utilizzato alcun db per salvare i dati ma vengono direttamente visualizzati su una pagina.
esiste qualche guida che spieghi invece come integrare l'fck con db access?
ho notato inoltre che crea dinamicamente la textarea tra i tag <form> e quindi non riesco a ricavare il nome della textarea per salvarne i dati su db.
grazie
-
Allora, per il nome della textarea, c'è il modo di saperlo, ad esempio usando i sample che ci sono dentro, comunque è qualcosa di default tipo fckeditor o roba del genere. Poi le impostazioni che ti servono sono veramente poche. Per l'inserimento nel db, tratti la stringa come una normale stringa, se sai fare l'inserimento non cambia niente, basta che inserisci nel db la variabile che viene postata dal form.
-
ciao cali, ok, ho sistemato il tutto nel senso che ho trovato il nome della textarea e riesco a passare i dati al campo del database.
Ora però ho un problema proprio con i dati che devo passare --> se sono più di 255 caratteri (il campo del db è memo) mi da il seguente errore:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression
Il codice che mi da errore è il seguente:
<% Dim conn Set conn = Server.CreateObject("ADODB.Connection") conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("/mdb-database/db.mdb") sql = "INSERT INTO home (descrizione) VALUES ('"&request.Form("FCKeditor1")&"')" Set rs = Server.CreateObject("ADODB.Recordset") rs.Open sql, conn, 3, 3 Conn.Close %>
Sapresti indicarmi dove sta l'errore?
Grazie ancora.
-
Potresti visualizzzare la query che da errore? Cioè con il valore del campo request.Form("FCKeditor1")?
-
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression ''A 2000 mt. di altitudine, superata la stretta gola dominata dalle Torri di Fraele, edificate nel 1431, all'imbocco di una delle Valli più spettacolari ed impressionati dell'Alta Valtellina, è situato il Lago delle Scale, circolo di pesca priva'.
/invia.asp, line 10
-
sql = "INSERT INTO home (descrizione) VALUES ('"&replace((request.Form("FCKeditor1"), "'", "''")&"')"
-
perfetto, grazie 1000 cali, molto gentile ma, dov'era l'errore?
un'ultima cosa...
nella pagina in cui utilizzo la textarea di fck nel campo posso far visualizzare già del testo attraverso questo script:<% Dim oFCKeditor Set oFCKeditor = New FCKeditor oFCKeditor.BasePath = "/fckeditor/" oFCKeditor.Value = "Scrivi qui il testo che vuoi inserire" oFCKeditor.Create "FCKeditor1" %>
se io invece volessi far comparire il contenuto del campo da db come dovrei inserire in oFCKeditor.Value il codice <%=RS(descrizione)%>?
-
Di niente, l'errore è che se nel testo c'è l'apice (') lo vede come fine stringa e va in errore, quindi quel codice lo raddoppia, che sta a indicare la sequenza di escape dell'apice in asp. Per inserire il vaolre, devi fare:
<% .... crei l'rs e fai la query nel db... Dim oFCKeditor Set oFCKeditor = New FCKeditor oFCKeditor.BasePath = "/fckeditor/" oFCKeditor.Value = RS(descrizione) oFCKeditor.Create "FCKeditor1" %>
-
ho fatto in questo modo:
<% Dim conn Set conn = Server.CreateObject("ADODB.Connection") conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("/mdb-database/db.mdb") Dim rs Set rs = Server.CreateObject("ADODB.Recordset") rs.Open "select * from home", conn Dim oFCKeditor Set oFCKeditor = New FCKeditor oFCKeditor.BasePath = "/fckeditor/" oFCKeditor.Value = rs(descrizione) oFCKeditor.Create "FCKeditor1" %>
ma mi da il seguente errore:
ADODB.Recordset error '800a0cc1' Item cannot be found in the collection corresponding to the requested name or ordinal. /due1.asp, line 108
-
Sicuro che la query restituisca dei dai? E che li siano valorizzati? E che ci sia descrizione? Porva a visualizzare cosa c'è dentro rs...
-
ho controllato sia sul db che nella pagina in cui viene visualizzato rs(descrizione) ed è tutto corretto inclusa la formattazione.
quindi non capisco il problema, come mai mi da quell'errore se voglio inserire nella textarea il rs per fare n modo di poterne modificare il contenuto.
-
ho risolto in questo modo (giusto per essere magari d'aiuto a chi avesse riscontrato il mio stesso problema):
Dim oFCKeditor Set oFCKeditor = New FCKeditor oFCKeditor.BasePath = "../fckeditor/" oFCKeditor.Width = "550" content = rs("descrizione") oFCKeditor.Value = content oFCKeditor.Create "FCKeditor1"
grazie ancora cali e arriverci a tutti al prossimo problema
-
E così funziona?? Strano. Comunque grazie per la dritta! Alla prossima!