Nach Suchabfrage ähnliche Werte anzeigen

LN5

Mitglied
Tach ihr

habe es jetzt schon mit den verschiedensten Suchbegriffen versucht (u.a. suchabfrage übereinstimmung, suche ähnliche datensätze etc..) und finde einfach nichts dazu. Wenn man bei Google eine Abfrage tätigt und dabei keine oder wenige Ergebnisse erhält, schlägt die Suchmaschine andere Wörter vor. Genau das möchte ich auch machen. Wenn jetzt jmd. z.B. ein lateinisches Wort falsch geschrieben hat (statt patriä anstatt patriae etc.), dass dann das Skript die 5 ähnlichsten Datensätze ausgibt und darauf hinweist.

Ich kann mich erinnern mal ein Codeschnipsel gesehen zu haben, wo die prozentuale Übereinstimmung zwischen Suchwort und Datensatz angezeigt wird, weiss aber leider nicht mehr, wo ich das aufgeschnappt habe.

Danke für eure Hilfe..
 
Moeglicherweise koennen Dir dabei Funktionen wie soundex() behilflich sein.
In Doku zu soundex() finden sich auch noch Links zu 3 anderen Funktionen die in die gleiche Richtung gehen.
 
Hi

Würde das auf die schnelle so lösen.

Zuerst machst du dein Abfage nach dem Exakten Wort. Lasst halt einen count mitlaufen wie viele Treffer vorliegen.
Sofern der Count der Treffer kleiner als 1 ist.
Machst du eine erneute Datenbank-Abfrage mit "like".

Zum Beispiel:
PHP:
<?
mysql_query("SELECT title, content FROM test WHERE title LIKE '%suchbegriff%' ....:");
?>

Genaueres zu der Vergleichsfunktion von MySql findest du hier:
http://dev.mysql.com/doc/refman/4.0/de/string-comparison-functions.html
http://dev.mysql.com/doc/refman/4.0/de/string-comparison-functions.html
Gruß
Max
 
Gute Idee! Danke!
Und die Geschichte mit den %. Hat die was mit dem Post von Dennis Wronka zu tun (habs mir noch nicht angeschaut) oder ist das was ganz anderes?
 
Zurück