Patricia Tiedemann: match against vs. ü

Aloha =)

Zur Zeit sitze ich an der Suchfunktion für einen Webshop. In der MySQL-Datenbank (utf8) gibts es in einer Tabelle die Spalte 'src_searchkey', in der einige Worte (durch Leerzeichen getrennt) sind, die den jeweiligen Artikel beschreiben (in meinem Falle: Kunstdrucke).

Nun gibt ein User in der Motivsuche z.B. 'küste' ein. Suchergebnisse: 0, obwohl mehr als 20 Bilder mit dem Wort versehen wurden.

Der SQL-Query ist:
SELECT src_id, src_artid, src_mftid, src_searchkey
MATCH (src_searchkey, src_mftfullname) AGAINST ('küste') AS ranking
FROM cse_search
WHERE MATCH (src_searchkey, src_mftfullname) AGAINST ('küste')
ORDER BY ranking DESC LIMIT 0,100;

Ich hab schon vieles versucht, es utf8-en- und -decoded, escaped, alles ganz weggenommen. Er will bei 'küste' einfach nichts finden.
Die Mindestwortlänge steht auf 3 (Standard).

Bei 'berühmt' findet er hingegen alle mit dem Wort verschlagworteten Bilder, und dazu noch Bilder, die mit 'berührung'. Nicht ganz 'working as intended'.
Ich muss aber weiterhin die 'match-against' nutzen, da ich das 'ranking' brauche.

MySQL Client-Version: 4.0.18
PHP-Version: 4.2

Hat jemand eine Idee, in welche Richtung ich forschen muss, um das zu lösen?
Herr Google konnte mir bisher wenig hilfreiches ausspucken, die meisten Seiten zu dem Thema befassen sich mehr damit, dass andere vergessen haben, die zu durchsuchenden Seiten als Fulltext zu definieren -.-;

Liebe Grüße,
Patricia ~

P.S. Ich hoffe, dies ist der richtige Themenbereich für diese Frage. So wie es mir scheint, ist dies aber eher ein MySql, denn ein PHP-bezogenes Problem. ich lass mich aber auch gern eines besseren belehren. :)

  1. Hi ~ Patricia ~

    Wenn ich dich richtig verstehe, besteht das Problem nur wenn Wärter mit Umlauten gesucht werden...

    Da du von PHP redest, würde ich dir empfehlen, die Eingaben vorher mit HTMLSPECIALCHARS zu bearbeiten, die schlagworte sowie die suchbegriffe

    Ist nicht die sauberste Lösung, aber das Problem ist aus der Welt, wenn du nicht im sinn hast, die Daten nicht in HTML auszugeben.

    grüsse nimble

    PS: wenn ich mich nicht irre ist das Umlaute unterstützende Charset iso-8859-1

    THX

    --
    ie:} fl:( br:> va:) ls:& fo:# rl:( n4:? ss:) de:] js:| ch:? sh:) mo:? zu:)
    ------------------------------
    lieber ein Pinguin der läuft
    als ein Fenster das hängt
    ------------------------------