Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Evidenziare risultati da query di ricerca

    ciao, ho letto decine di messaggi in questo forum ma non ho trovato la soluzione quindi vi chiedo aiuto...
    in pratica ho un motore di ricerca su un database..ho fatto in modo che la parola o le parole cercate (tramite split ed array) vengano cercate su più campi del databa se fin qui non ci sono problemi in quanto il motore funziona perfettamente..

    Vorrei però che stampando i risultati della ricerca le parole (o parte di esse..) cercate venissero evidenziate...la cosa funziona se cerco UNA sola parola ma se i temini sono di più viene evidenziata SOLO l'ultima parola cercata...
    Prima di allegare codice, ecc...ecco il link:
    www.giorgius.net/am/cerca.asp

    provate ad inserire "chitarre elettriche"...vedrete che verrà evidenziata solo la parola "elettriche"...invertendo (elettriche chitarre" verrà evidenziata solo la parola "chitarre"...
    Come posso risolvere?
    Giorgius

  2. #2
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,781
    l'esempio è chiaro, ora posta il codice di ricerca.

  3. #3
    Quote Originariamente inviata da Vincent.Zeno Visualizza il messaggio
    l'esempio è chiaro, ora posta il codice di ricerca.
    Eccolo:

    dalla query:

    marca = rs("marca")
    nome = rs("nome")
    cat = rs("cat")
    subcat = rs("subcat")

    innanzitutto "splitto" la stringa contenente le parole inviate dal form:

    stringa2=split(trim(stringa)," ")

    poi...

    For Each item In stringa2
    'faccio un replace in modo che venga evidenziato di giallo il background...

    marca2 = replace(marca,item,"<span style=""background-color: yellow""><b>"&item&"</b></span>",1, -1, 1)

    cat2 = replace(cat,item,"<span style=""background-color: yellow""><b>"&item&"</b></span>",1, -1, 1)

    subcat2 = replace(subcat,item,"<span style=""background-color: yellow""><b>"&item&"</b></span>",1, -1, 1)

    nome2 = replace(nome,item,"<span style=""background-color: yellow""><b>"&item&"</b></span>",1, -1, 1)
    next
    %>
    'stampo risultato
    Art: <%=nome2%><br>
    Cat: <%=cat2%><br>
    Subcat: <%=subcat2%>
    Marca: <%=marca2%><br>

    <img src="/public/<%=rs("foto")%>"

    p.s: SE inserisco il risultato all'interno del ciclo, i record mi vengono stampati doppi...
    Giorgius

  4. #4
    troppo complicato? :-(
    Giorgius

  5. #5
    ri-ciao a tutti....
    ho risolto in maniera strepitosa il problema gestendo i risultati ottenuti con un semplicissimo script jquery...il discorso è un pò lungoma se a qualcuno interessa e per amor di condivisione spiego tutto nel dettaglio..
    Giorgius

  6. #6

  7. #7
    Quote Originariamente inviata da optime Visualizza il messaggio
    spiega
    in pratica ho inserito uno script jquery che permette di evidenziare le parole cercate all'interno dei risultati ottenuti dalla query sul db con ben 5 scelte di colore diverse (un colore per parola)
    si chiama SearchHighlight.js (basta fare una googlate per trovarlo..)

    provare per credere:
    http://www.giorgius.net/am/cerca.asp
    Giorgius

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.