33 messaggi dal 13 gennaio 2012
Ciao a tutti.

Nell'applicazione che sto creando ho un database access con un campo in cui memorizzo del testo.
Ho creato un form in cui posso modificarlo, il mio problema è che quando apro il database ed estraggo il valore del campo me lo riporta correttamente, nel momento in cui lo sposto in una variabile di comodo tutto bene ma quando metto il contenuto della variabile in una textarea del form mi visualizza anche i tag.

strAppello = rs(11)
<textarea name="Appello" cols="50" rows="20" id="Appello" value=<%=strAppello%>></textarea>

C'è qualcuno che riesce a darmi una spiegazione e ad aiutarmi a risolvere il problema ?

Grazie in anticipo.

Fausto.
11.886 messaggi dal 09 febbraio 2002
Contributi
ciao,
textarea è un elemento che è in grado di visualizzare solo testo semplice.
Se anche la riempissi con un frammento di html, essa non potrebbe far altro che mostrarti il "codice sorgente" del frammento, ovvero testo misto a tag.

Il modo corretto di visualizzare del testo all'interno della textarea è questo:
<textarea name="Appello" cols="50" rows="20" id="Appello"><%= Server.HtmlEncode(strAppello) %></textarea>
textarea è un elemento contenitore, quindi il suo contenuto va inserito tra i tag <textarea> e </textarea>.
Inoltre, qui ho usato la funzione Server.HtmlEncode per rendere "inoffensivi" eventuali caratteri speciali, come ad esempio < e >. Ricorda che devi sempre usare l'HtmlEncode per visualizzare un contenuto generato dagli utenti. Un testo appositamente creato da un malintenzionato può esporti al Cross-site scripting, di cui puoi leggere qui:
http://it.wikipedia.org/wiki/Cross-site_scripting

Se desideri visualizzare e modificare più del semplice testo, allora anziché una textarea devi usare un editor WYSIWYG. Ne esistono diversi gratuiti. Esempi:
http://ckeditor.com/
http://www.tinymce.com/

ciao

Enjoy learning and just keep making
33 messaggi dal 13 gennaio 2012
Grazie x il suggerimento, però il mio problema rimane, se il textarea mi mostra sia testo che codice, in quale campo posso inserire il testo che prelevo da access per far sì che mi visualizzi solo testo e non codice ?

Grazie.
11.886 messaggi dal 09 febbraio 2002
Contributi
ciao, dipende da cosa devi realizzare.
Qual è il motivo per cui vuoi rimuovere i tag?
  • Se vuoi rendere editabile un testo HTML all'utente, e poi risalvarlo, allora devi usare un editor WYSIWYG. In questo caso, una ipotetica stringa "<b>titolo</b>" verrà mostrata all'utente come una parola "titolo" visualizzata in grassetto. L'utente potrà modificarla ed eventualmente arricchire il testo applicando altri stili di formattazione. Infine potrà risalvarlo nel database.
  • Se i tag sono indesiderati e quindi vuoi che vadano persi definitivamente, allora puoi usare una funzione che te li rimuova dalla stringa originale. Segui questo esempio.
    http://www.aspitalia.com/script/232/Eliminare-Tag-HTML-Stringa-Regular-Expression-VBScript-5.x.aspx
    La stringa risultante conterrà solo testo e non codice.


ciao
Modificato da BrightSoul il 23 febbraio 2012 23.22 -

Enjoy learning and just keep making
33 messaggi dal 13 gennaio 2012
Il motivo per cui voglio rimuovere a video i tag è che se l'utente decide di modificare un campo testo di un record, vorrei visualizzasse a video solo il testo vero e proprio invece al momento nella TEXTAREA questo è il risultato :

<div align=center><font face="Times New Roman" size=3 color=black>Lui è Kabir, abbandonato da cucciolo insieme ad altri tre fratellini in un bosco sperduto. ora ha tre anni e si è rivelato un cane spettacolare.....è dolcissimo
11.886 messaggi dal 09 febbraio 2002
Contributi
ok, aggiungi alla tua pagina la funzione NoHTML che trovi in questo articolo.
http://www.aspitalia.com/script/232/Eliminare-Tag-HTML-Stringa-Regular-Expression-VBScript-5.x.aspx

Poi usala così:
<textarea name="Appello" cols="50" rows="20" id="Appello"><%= NoHTML(strAppello) %></textarea>


Attenzione perché al risalvataggio perderai definitivamente quei tag che erano stati rimossi. Forse è meglio così perché la formattazione del testo non dovrebbe essere mischiata al testo stesso ma andrebbe inserita altrove, ad esempio in un foglio di stile .css.

ciao

Enjoy learning and just keep making
33 messaggi dal 13 gennaio 2012
Ciao.

Adesso funziona alla perfezione, grazie 1000.

Visto che sei stato così gentile posso disturbarti per un'ultima cosa ?

Ho fatto l'upload di immagini con la classe di Baol, fin qui tutto bene, però dovrei fare anche una resize per non appesantire troppo la pagina visto che ci carico tante foto.

Ho trovato in giro altre classi e sistemi vari per l'upload e la resize di immagini, ma non posso fare una resize tenendo buono l'upload che sto usando ?

Questo è il codice che ho usato :

<!--#include file="upload.asp"-->
<%
dim id
strID = trim(request.QueryString("ID"))
Dim oUpload
Set oUpload = new cUpload
oUpload.AutoRename = False
oUpload.Overwrite = true
oUpload.SetPath ("/Foto_Record/" & strID)
oUpload.Upload
oUpload.SaveAs "01.jpg"
set oupload = Nothing
%>
<FORM METHOD="Post" enctype="multipart/form-data" ACTION="">
Foto : <INPUT TYPE="file" NAME="Campo1"><BR>
<INPUT TYPE="submit" NAME="Enter">
</FORM>

Grazie

Fausto.
11.886 messaggi dal 09 febbraio 2002
Contributi
Fausto77 ha scritto:
non posso fare una resize tenendo buono l'upload che sto usando?


certo, l'upload va bene così com'è, ma come intendi fare il ridimensionamento? In Asp classico non c'è modo di farlo, devi per forza installare un componente nel server oppure appoggiarti a dotNet.

Nel primo caso, dai un'occhiata al componente SImage che trovi qui:
http://www.reneris.com/tools/

Invece, se preferisci usare dotNet, leggi questo post.
http://forums.aspfree.com/code-bank-54/image-resize-part-ii-resize-image-on-the-fly-135703.html

ciao
Modificato da BrightSoul il 24 febbraio 2012 21.17 -

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.