Volltext Suche mit MySQL

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Volltext Suche mit MySQL

Beitrag von fanrpg »

Also ich habe die search.php ein bisschen umgebaut und habe dort eine nur mit MySQL laufbare Volltextsuche eingebaut.

Hier der Link: www.fanrpg.com/download.php?dl=mysql_fulltextsearch.txt

Das wars an sich schon... funktioniert bei mir auf jeden Fall perfekt. :D
Zuletzt geändert von fanrpg am 05.05.2006 10:00, insgesamt 3-mal geändert.
Benutzeravatar
ATARI
Mitglied
Beiträge: 1684
Registriert: 22.02.2004 16:51
Wohnort: Monaco Di Bavaria

Beitrag von ATARI »

aha und was für Vorteile hat das ganze??
Man soll aufhören wenn´s am schönsten ist!

Servus phpBB! ;)
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

ATARI hat geschrieben:aha und was für Vorteile hat das ganze??
Also bei mir habe ich eine Leistungssteigerung von um die 50%
Es geht also um einiges schneller die Suche und die Suche dürfte um einiges genauer sein als Standardmässig.
Toni
Mitglied
Beiträge: 121
Registriert: 16.01.2004 18:02

Beitrag von Toni »

Hallo fanrpg,

hoert sich ja eigentlich nicht schlecht an.

Gibt es da keine Resonanz dazu ? Hat das schon jemand eingebaut ?

Heisst das, die Suchwort-Tabelle inkl. der stopwords.txt wird dabei ignoriert ?

Gruss Toni
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Also eingebaut habe ich das jetzt in 7 Foren... bisher ohne Probleme.

Und ja die Suchwort-Tabelle wird bei der Suchmethode komplett ignoriert.
Und alle anderen Suchwort-Spielchen die es im phpBB so gibt.
Benutzeravatar
larsneo
Mitglied
Beiträge: 2622
Registriert: 07.03.2002 15:23
Wohnort: schwäbisch gmünd
Kontaktdaten:

Beitrag von larsneo »

Also bei mir habe ich eine Leistungssteigerung von um die 50%
Es geht also um einiges schneller die Suche und die Suche dürfte um einiges genauer sein als Standardmässig.
obacht: bei einer grossen anzahl an postings dürfte dies verhältnis aber genau andersherum ausfallen - zumal der ressourcenbedarf an den mysql-server deutlich steigen dürfte...
ebenfalls ist es iirc problematisch falls bei einer volltextsuche die ergebnismenge sehr gross ist (>1000 ergebnisse)
gruesse aus dem wilden sueden
larsneo
..::[krapohl.net]::..
Fundus
Mitglied
Beiträge: 488
Registriert: 29.03.2004 21:22

Beitrag von Fundus »

larsneo hat geschrieben:obacht: bei einer grossen anzahl an postings dürfte dies verhältnis aber genau andersherum ausfallen - zumal der ressourcenbedarf an den mysql-server deutlich steigen dürfte...
ebenfalls ist es iirc problematisch falls bei einer volltextsuche die ergebnismenge sehr gross ist (>1000 ergebnisse)
hmm (z.B.) bei vB verweist man auf eben die volltextsuche bei großen boards, da diese eben ressourcen schonender ist :roll:
entweder hat jetzt das vB eine aufwendigere suche als das phpBB (wobei mir da eher das gegenteil im kopf rumspukt) oder die haben einfach keine ahnung :D
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

An sich ist die Volltextsuche auch Ressourcen schonender... habe ich auf jeden Fall gehört, deswegen habe ich das überhaupt (mehr oder weniger) entwickelt.
Gast210225

Beitrag von Gast210225 »

und ersetzt das mit diesem:

Code: Alles auswählen

//$match_word = str_replace('*', '%', $split_search[$i]);
$match_word = stripslashes(trim($split_search[$i]));
$sql = "SELECT m.post_id
           FROM phpbb_posts_text w, phpbb_posts m
           WHERE MATCH w.post_text AGAINST ('$match_word')
                      AND w.post_id = m.post_id";
Wenn nun jemand ein andeses Prefix als "phpbb_" hat, gehts nicht ;)
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

JG hat geschrieben:
und ersetzt das mit diesem:

Code: Alles auswählen

//$match_word = str_replace('*', '%', $split_search[$i]);
$match_word = stripslashes(trim($split_search[$i]));
$sql = "SELECT m.post_id
           FROM phpbb_posts_text w, phpbb_posts m
           WHERE MATCH w.post_text AGAINST ('$match_word')
                      AND w.post_id = m.post_id";
Wenn nun jemand ein andeses Prefix als "phpbb_" hat, gehts nicht ;)
Danke, hab ich gar nicht dran gedacht verbessere ich mal kurz :wink:
Antworten

Zurück zu „phpBB 2.0: Mods in Entwicklung“