Suche mit mehreren Wörtern

Suche mit mehreren Wörtern

am 29.08.2006 16:16:57 von Michaela Hasselmann

Ich habe eine Suche, diese funktionert auch bei einem Wort

Über ein Formular wird das Suchwort eingegeben ($suchwort), dann im
folgenden Script gesucht und ausgegeben.


$sql = "select * from test_beitraegeWHERE inhalt LIKE '%$suchwort%'";
$result = mysql_query($sql) or die ($sql.'
'.mysql_error());
while ($ausgabe = mysql_fetch_object($result))

Nun möchte ich das ganze so erweitern das man auch mal mehr Worte in die
Suche eingeben kann, doch dann funktioniert nichts mehr.

Micha

Re: Suche mit mehreren Wörtern

am 29.08.2006 16:31:43 von Christian Kirsch

Michaela Hasselmann schrieb:
> Ich habe eine Suche, diese funktionert auch bei einem Wort
>
> Über ein Formular wird das Suchwort eingegeben ($suchwort), dann im
> folgenden Script gesucht und ausgegeben.
>
>
> $sql = "select * from test_beitraegeWHERE inhalt LIKE '%$suchwort%'";

Dieses Statement dürfte immer ein Fehlermeldung erzeugen.

> $result = mysql_query($sql) or die ($sql.'
'.mysql_error());
> while ($ausgabe = mysql_fetch_object($result))
>
> Nun möchte ich das ganze so erweitern das man auch mal mehr Worte in die
> Suche eingeben kann, doch dann funktioniert nichts mehr.

PHP ist hier nicht on-topic. Bitte poste nur SQL
Aus verschiedenen Gründen wird allgemein von der Verwendung von
"SELECT *" abgeraten -> google
Wenn man mit LIKE %...% sucht, kann MySQL keine Indizes benutzen, das
schadet also der Performance.
Für Suche nach mehreren Wörtern könnte sich ein Fulltext-Index eignen.

Was "funktioniert nichts mehr" bedeutet, weiß außer Dir niemand. Bitte
schildere, was Du getan hast (SQL-Statement!), was Du erwartet hast
und was passiert ist. Wenn es eine Fehlermeldung gab, poste die (cut &
paste!).