phpbar.de logo

Mailinglisten-Archive

[php] Suchfunktion: Begriffe müssen nicht nebeneinander vorkommen

[php] Suchfunktion: Begriffe müssen nicht nebeneinander vorkommen

Peter Bieling net2 at media-palette.de
Mon Sep 3 14:59:32 CEST 2007


Hallo Norbert und Simon,

Norbert Pfeiffer schrieb:

> Auch ist mir nicht bekannt, ob man Felder wichten kann.
> Rein IMHO ist es einen Versuch wert ...

ich habe das mal in einer Artikelsuche verwendet und stell das einfach 
mal so als Anregung und Steinbruch hin:

$datumcondition = ($datum == 1) ? 'Datum DESC ,' : '';
$what = "Datum, substring(Datum,3,2) as Jahr, Nr, Rubrik, Titel, 
Subtitel, MATCH (Titel, Subtitel, Kurztext)
AGAINST ('$suche') +
MATCH (Langtext)
AGAINST ('$suche') AS rang ";

$where= "(Free = 1) AND (MATCH ( Titel, Subtitel, Kurztext )
AGAINST (  '$suche' ) OR
MATCH (Langtext)
AGAINST ('$suche'))
ORDER  BY $datumcondition rang DESC Limit 30";

Die Fundstellen sollte man dann noch entsprechend hervorheben,
...
$row['rtitel'] =  preg_replace ("|($suche)|i", "<b 
style='color:blue'>\\1</b>", $sgrow['Titel']);
...
bevor man das Template damit füttert.

Viele Grüße

Peter
-- 
http://www.media-palette.de/

php::bar PHP Wiki   -   Listenarchive