Visualizzazione dei risultati da 1 a 8 su 8

Discussione: tag in campo db

  1. #1

    tag in campo db

    Salve a tutti,
    ho un db access, che in un campo "descrizione" ho un testo, e alla fine ho scritto questo:
    codice:
    clicca qui per andare alla prossima pagina.
    il probelma sta nel fatto che se faccio una ricerca, impostando una query del tipo:
    Select * from mio database where descrizione like %pagina%
    mi esce stampata la pagina con tutto il codice per il link, e se faccio una ricerca per il termine "href" mi esce stampato il codice.

    come potrei fare per far impedire ad allo script di interpretare si i tag html scritti in un record, ma di non farli figurare come testo

    Grazie, ciao.

  2. #2
    Leggi i dati dal db passandoli dalla funzione server.HTMLEncode()

  3. #3
    thnx ora ci provo

  4. #4
    grazie mems per la tua risposta, ma purtroppo non mi funziona:
    se metto htmlencode, mi riporta tutto il testo coi tags inclusi;
    se metto urlencode, alcune cose me le omette.

    penso che non ci sia una grande alternativa, a meno che non trovo un sistema per disabilitare almeno il codice dei links, vorrei fare qualcosa del tipo

    codice:
    descrizione= repalce(descrizione,"<a href="," ")
    descrizione= repalce(descizione,"</a>"," ")
    ma purtroppo il contenuto nel tag dei links è variabile e mi riporta il percorso dei tags,
    che ne pensi?

    grazie, ciao.

  5. #5
    puoi fare una seplice replace del < con l'equivalente codificato e stesso discorso per il carattere >

  6. #6
    puoi fare una seplice replace del < con l'equivalente codificato e stesso discorso per il carattere >
    Il problema è che poi mi esce scritto tutto il link così com'è.

    Non esiste qualche funzione che mi disabilita i tag e tutto quello che c'è dentro i tag nei file di testo???

    es.:
    vai alla pagina2

    mi farebbe uscire solo "vai alla pagina2" senza il codice html

    chiedo troppo??

    grazie, ciao.

  7. #7
    Cerca
    function cleanHTML
    sul forum e su google
    Su google magari ci aggiungi la parola ASP

  8. #8
    eccola qua:
    codice:
    Function cleanHTML(ByVal pStrHTML)
        	
        	Dim lObjRegExp
        	If VarType(pStrHTML) = vbNull Then Exit Function
        	If pStrHTML = "" Then Exit Function
        	Set lObjRegExp = New RegExp
        	lObjRegExp.Global = True
        	lObjRegExp.IgnoreCase = True
        	lObjRegExp.Pattern = "<(/)?SCRIPT|META|STYLE([^>]*)>"
        	pStrHTML = lObjRegExp.Replace(pStrHTML, "")
        	lObjRegExp.Pattern = "<(/)?(LINK|IFRAME|FRAMESET|FRAME|APPLET|OBJECT)([^>]*)>"
        	pStrHTML = lObjRegExp.Replace(pStrHTML, "")
        	lObjRegExp.Pattern = "(<A[^>]+href\s?=\s?""?javascript:)[^""]*(""[^>]+>)"
        	pStrHTML = lObjRegExp.Replace(pStrHTML, "")
        	lObjRegExp.Pattern = "(<IMG[^>]+src\s?=\s?""?javascript:)[^""]*(""[^>]+>)"
        	pStrHTML = lObjRegExp.Replace(pStrHTML, "")
        	lObjRegExp.Pattern = "<([^>]*) on[^=\s]+\s?=\s?([^>]*)>"
        	pStrHTML = lObjRegExp.Replace(pStrHTML, "")
        	Set lObjRegExp = Nothing
        	
        	cleanHTML = pStrHTML
        	
        End Function
    La metto a disposizione di tutti coloro che hanno il mio stesso problema.

    penso che il funzionamento dovrebbe essere questo:
    1) prendi la stringa contenuta nel db, es: recordset("descrizione"), chiami la funzione passandola es: call cleanHtml(ByVal, recordset("descrizione"))
    2) dove vuoi che ti stampa il risultato metti: response.write pStrHTML sarebbe la stringa pulita.
    p.s. byVal che cos'è ???

    ciao.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.