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

    "google style" e keyword in grassetto

    Salve a tutti, sono un nuovo membro del forum con due quesiti altrettanto nuovi

    Mi piacerebbe risolvere una pagina dei risultati del mio motore di ricerca al modo di Google, nel senso, per ogni record individuato dalla query (linkato al risultato vero e proprio) vorrei visualizzare la parola trovata estrapolata insieme alle 5 parole precedenti e alle 5 successive

    risultato 1
    ..questo bla bla bla risultato 1 bla bla bla bla bla...
    ..quest'altro bla bla bla risultato 1 bla bla....


    mi sarò spiegato? Cmq, non so proprio come calcolarmi e visualizzare la keyword preceduta e ...succeduta(?) da tot parole, quindi tutte le parti che ho messo sopra in corsivo.

    A tempo perso...c'è un modo di evidenziare in grassetto nella pagina con il risultato (quella a cui rimanda risultato 1) le keyword ricercate nella query?

    oggi con l'italiano faccio a botte...

  2. #2
    al volo farei così:

    Codice PHP:
    $result str_replace("result1""[b]result1[/b]"$result ); 

  3. #3
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003
    Per il grassetto credo basti che una volta estratto il testo tu faccia
    Codice PHP:
    $testo preg_replace('#'.$parola_cercata.'#si''[b]'.$parola_cercata.'[/b]'$testo); 
    per l'estrarre solo 5 parole prima e 5 dopo.. ci penso n'attimo e ti faccio sapere

  4. #4
    mille grazie! risolto il problema grassetto per il resto...al momento son costretto a rinunciare anche se un'idea complicata mi era venuta in mente:

    -immagazzinare l'intero campo della ricerca in una variabile e contarne in caratteri in $caratteri

    -trovare la prima occorrenza del risultato con strpos() usando le keyword di ricerca (eventualmente usando explode se sono più di una)

    -usare substring($campo, x, -y) dove x è il numero di caratteri dall'inizio di $campo (da cui ne sottraggo una ventina, per stampare anche un paio di parole precedenti)dove si presenta l'occorrenza e -y è il numero di caratteri dalla fine della stringa $campo (a cui ne aggiungo una ventina, per il motivo di cui sopra).

    ma ho dei problemi:
    1) stropos() mi trova solo la prima occorrenza...e le altre???
    2) mi sembra troppo complicato e farraginoso...

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    460
    Usate [b].

    [b] e' deprecato
    There are 10 types of people in the world - those who understand binary and those who don't.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.