Prima di tutto grazie mille per la pazienza.. Pensavo fosse più semplice realizzare una cosa del genere
Comunque il titolo nel mio caso può avere più di una parola.. ad esempio nella tabella nel db ho "template blogger", "template wordpress" ecc ecc se inserisco come termine di ricerca soltanto "template" mi dovrebbe evidenziare in entrambi la parola template.. in giro su internet un signore ha scritto questo codice, che funziona a tutti quelli che lo avevano provato:
Codice PHP:
<?
$postrep= $row[Post]; // il testo da controllare
///////evidenzia
//////////////////
$replacement = '\\1<font style=COLOR:#ffff00 ;>\\2</font>';
reset ($keys); //le parole cercate
foreach ($keys as $parola){
if ($blok==1){
$parola = " $parola ";
}
$pattern = '(>[^<]*)('. quotemeta($parola) .')';
$postrep = eregi_replace($pattern, $replacement, $postrep);
}
echo $postrep;
?>
Adesso ho provato a pasticciare un po' il mio codice.. modificando alla fine in questo modo:
Codice PHP:
$testo = $campo;
$replacement = '<font style=color:#ffff00;>';
for($x=0; $x<$quanti; $x++)
{
$rs = mysql_fetch_row($query);
$id = $rs[0];
$titolo = $rs[1];
$pattern = '(>[^<]*)('. quotemeta($titolo) .')';
$postrep = eregi_replace($pattern, $replacement, $testo);
?>
[url="leggi.php?id=<? echo "]"><? echo "$postrep"; ?>[/url]</p>
<?
} ?>
ed ottengo i vari risultati dove il mio termine è inserito.. ma non me li evidenzia, leggo soltanto il termine. Questa è la pagina: Link se inserisci la lettera "w" visualizzerai effettivamente i 6 record in cui quella lettera è contenuta nel titolo.. ma poi non leggo più nulla, è come se mi avesse cancellato tutto