Page 1 of 1

Bindestrich bzw. Minus im Suchstring

Posted: Fri Sep 21, 2007 2:56 pm
by Hippo
Hallo,
mal ne Frage wie ich das beheben kann, wenn ich in meinem Blog "DR-Big" (ist ein Motorrad) eingebe, bekomme ich immer eine Fehlermeldung!

Gibt es da eine Möglichkeit diesen Fehler zu beheben oder zu umgehen!?

BIG alleine geht ja auch nicht, da es nur 3 Buchstaben hat!

Hier der Fehler:
Die Suche konnte nicht wie gewünscht ausgeführt werden. Hinweis für den Administrator dieses Blogs: Dieser Fehler kann durch fehlende Index-Schlüssel der Datenbank verursacht werden. Auf MySQL-Systemen muss der Datenbankbenutzer-Account in der Lage sein, Index-Schlüssel zu erstellen und folgende Abfrage auszuführen:

CREATE FULLTEXT INDEX entry_idx on s9y_entries (title,body,extended)

Die genaue Fehlermeldung der Datenbank bei der Suche lautete:

SELECT
e.id,
e.authorid,
a.realname AS author,
e.allow_comments,
e.moderate_comments,
a.email,
e.timestamp,
e.comments,
e.title,
e.body,
e.extended,
e.trackbacks,
e.exflag

FROM
s9y_entries e
LEFT JOIN s9y_authors a
ON e.authorid = a.authorid
LEFT JOIN s9y_entrycat ec
ON e.id = ec.entryid
LEFT OUTER JOIN s9y_entryproperties ep_access
ON (e.id = ep_access.entryid AND ep_access.property = 'ep_access')
LEFT JOIN s9y_entryproperties ep_sticky
ON (e.id = ep_sticky.entryid AND ep_sticky.property = 'ep_is_sticky')
WHERE
(MATCH(title,body,extended) AGAINST('"dr-big"' IN BOOLEAN MODE))
AND isdraft = 'false' AND timestamp <= 1190379300 AND (ep_access.property IS NULL OR ep_access.value = 'member' OR ep_access.value = 'public' OR (ep_access.value = 'private' AND e.authorid = 1))
GROUP BY e.id
ORDER BY timestamp DESC
LIMIT 10

/ You have an error in your SQL syntax near 'BOOLEAN MODE))
AND isdraft = 'false' AND timestamp' at line 27

Keine Einträge vorhanden
Vielen Dank schon einmal im vorraus ...
Grüsse,
Hippo

Re: Bindestrich bzw. Minus im Suchstring

Posted: Fri Sep 21, 2007 3:17 pm
by garvinhicking
Hi!

Ich fürchte, datt jeht nisch. :)

Durch das Bindezeichen wird MySQL in den boolean fulltext mode getogglet, der dann nach "DR" aber "NICHT Big" suchen will.

Grüße,
Garvin

Posted: Fri Sep 21, 2007 5:27 pm
by strcat
Bei mir funktioniert die Suche nach z. B. "e-mail" ohne Probleme.
http://strcat.de/blog/?serendipity%5Bac ... 2e-mail%22
PHP 4.4.1, MySQL 4.0.25, S9Y 1.2

Posted: Fri Sep 21, 2007 6:33 pm
by Hippo
Hallo Gravin,
vielen Dank, dank geht es wohl nicht!


@strcat
Funzt wirklich, werde mal versuchen auf ne neure MySQL umzusteigen, vielleicht geht es ja dann!?

Danke!!!

Hippo

Posted: Fri Sep 21, 2007 7:26 pm
by Hippo
Hallo,
kleiner Nachtrag von mir, habe jetzt von MySQL 3.23.58 auf 4.1.22 updatet, jetzt funzt der Bindestrich in der Suche!

Grüsse,
Hippo