Ich denke mal, dass Problem ist bekannt.
Ein User hat vor ca. 4 Wochen einen Thread erstellt, mit dem Namen "Handschuhfach-Subwoofer". Sucht man jetzt genau nach diesem Wortlaut, schmeißt SMF 250 Ergebnisse raus. Aber nicht das Thema "Handschuhfach-Subwoofer". Allerdings hat sich der "beschwerd" und im Support-Forum dieses mitgeteilt. Dieses Thema findet er.
Sucht man nun nach "Handschuhfach Subwoofer", hat man vier Ergebnisse, allerdings auch nur wieder die "Beschwerde".
Was ist denn da los?? Weiß hier jemand rat?? Funktion 'Übereinstimmung nur für ganze Wörter' ist deaktiviert, manueller Suchindex erstellt. Hab auch schon die Search.php von der RC3 genommen, bringt aber keine Besserung..
Ich wäre über jede Antwort dankbar!!
Gruß
Marco
Moin! Bißchen durcheinander heute? :P
Erstaunlicherweise scheint unsere Suche recht gut zu klappen, es gibt zwar auch eine Beschwerde, aber unterschiedliche User berichten dort unterschiedliche Ergebnisse. Die Suche ist also mit Intelligent Life versehen. Mal gehts, mal nicht, dann wieder doch.
Eine Lösung kann wohl nur die Coder-Fraktion finden... Ich werd das aber nochmal hier im englischen Board ansprechen, stellvertretend für die deutschen geplagten User...
Ja was war denn das???? Kack-Laptop-Tastatur! :) Da liegt alles so nah bei ein ander.
Das wäre echt prima wenn du es dort mal Posten würdest! Dann brauch ich nimmer..
http://www.simplemachines.org/community/index.php?topic=168930
Danke! :D
Es kann nicht schaden, wenn du dort auch nochmal deine Erfahrungen schilderst.
Ich kann das nur unterstreichen. Auch bei uns ist das Problem, dass bei Volltreffern in den Topic Titeln keine Treffer kommen, obwohl ich sogar die Gewichtung auf 30% gestellt habe.
Teilweise kommen Falschmeldungen wie 'Suchbegriff nicht differenziert genug. Bitte benutzen Sie längere Wörter.', obwohl das Suchwort definitiv lang genug war.
Ich hoffe es gibt bald Abhilfe, denn mit einem Forum ohne Suchfunktion kann man nichts anfangen.
Leider kann ich mich mangels Sprachkenntnissen nicht an einer englischen Diskussion beteiligen.
Trotzdem danke für den Hinweis im englischen Thema. ;)
so, hab das Problem auch und soweit ich es eingrenzen konnte liegt es nicht an der Board-Version (upgrade oder neue Installation der 1.1.2) sondern an der verwendeten MySQL-Version..
hab mein Board (Update von 1.1RC3 auf SMF Version 1.1.2) auf einem Server im Netz laufen, auf dem die Suche unsinnige Ergebnisse bringt..
auf meiner lokalen Maschine hab ich eine Kopie des Forums laufen, hier funktioniert die Suche einwandfrei.
auf dem Server im Netz nutze ich MySQL 4.0.22 mit aktiviertem Query-Cache
auf der lokalen Maschine eine aktuelle MySQL 5.0.37 ohne aktivem Query-Cachevermutlich liegt es also an der MySQL-Version oder am Query-Cache (werd ich heut abend aber nochmal gegenchecken, um das Problem noch weiter einzugrenzen)
leider hab ich selbst nicht genug Ahnung von PHP + SQL, um die Search.php mal auf unterschiede zu der verwendeten MySQL-Version zu untersuchen..
Eventuell kann ja einer von euch das übersetzen und den englischen Entwicklern zur Verfügung stellen. Mein Englisch ist nicht grad besonders gut.. kann's zwar lesen aber nicht so gut schreiben.
Gruß
Thorsten
Hm, wir sind online inzwischen auch auf PHP5. Mal testen, wie sich die Suche dort jetzt verhält. Danke für den Hinweis! :) Sollte sich was ergeben, schreibe ich es ins englische Thema.
so, hab grad nochmal diverse Tests gefahren.. der Query-Cache scheint es nicht zu sein, wenn ich den deaktiviere kommt beim Server trotzdem nur Unsinn beim Suchen zustande..
liegt also vermutlich wirklich an der MySQL-Version.. unter 5 keine Probs, unter 4 geht nix..
Bleibt da bloß dran, ist wichtig! :)
Ersten Tests nach funktioniert unsere Suche bestens. Wäre aber nett, wenn das jemand noch mittesten könnte...
Ich war mal so frei, Thorsten: http://www.simplemachines.org/community/index.php?topic=168930.msg1086856
@nehcregit
Nein, das ist es nicht. Wir haben das Problem sowohl auf einem Server mit mysql 4, als auch mit Einem der Version 5.0.32 hat!
Hm zu schade. :(
Grüße!
Ja, jammerschade.
Was ist mit der PHP Version? Vielleicht hat sich in die Suche etwas code eingeschlichen, der nicht so recht mit 4.xy harmoniert?
Wäre ne Idee. Wir waren bisher auf PHP4, jetzt PHP5, und bisher scheint die Suche zu funktionieren.
Ich muss das noch revidieren. Die max. postinglänge war auf >65536 Zeichen eingestellt, so dass ich benutzerdifinierte Indexe bilden musste. Seid dem ich die max. posting länge auf 65535 gestellt habe und 'normale' Suchindexe benutze, geht unter Mysql 5.XX alles einwandfrei.
Moin!
Hab jetzt auf einem Test-System von MySQL 4.1.11 auf 5.0.32 und PHP 4.3.* auf 5.2.0-8 upgegraded.
Hat leider nichts gebracht.. :(
Auch das rumspielen in verschiedenen Kombinationen mit Query-Cache, Such-Index (Volltext, Manuell groß klein mittel) und andere Optionen welche die Suche betreffen haben keinen Erfolg gebracht.
Hmm..
Ich hatte den jeweils alten Such-Index vor Erstellung eines Neuen immer gelöscht. Benutzung des Such-Index erzwingen, habe ich aus.
Gibts was neues?
Und das nächste Beispiel was total unlogisch ist:
User sucht nach "beleuchtetes Getränkefach". Er findet NUR den Beitrag, wo er danach fragt, warum man mit der Suche nichts findet. Es gibt ein Thread darüber, wo genau dieser Wortlaut in nem post steht.
Gibt man "beleuchtet Getränkefach" finder widerum gar nichts, was mich ein wenig verwundert.. Auch ein "beleuchtet% Getränkefach" bringt 0 Ergebnisse.
Hab jetzt MySQL 5.0.32 und php 5.2.2. Also scheint es an der Version von MySQL und php nicht zu liegen..
Von meiner Sicht aus nichts Neues. Ich freu mich schon, wenn wir bald mit einem phpBB mit 20.000 Beiträgen aufs SMF wechseln und die Leute verrückt werden, weil die Suche nicht mehr vernünftig läuft ::)
Ach.. mach dir nichts draus.. Sag einfach, dass die Entwickler den Fehler bereits kennen und dabei sind ihn zu beheben! :D Das hilft! :P
Ist aber schon irgendwie merkwürdig wie die Suche sucht.
@nehcregit
Welche php-Version habt ihr denn? Bei euch scheint es ja laut deiner Aussage zu funktionieren.
5.2.2
Hab jetzt mal für unser Joomla den SMFSearchBot installiert.. Komisch ist nun, dass er genau die Beiträge findet die man sucht?!
Was ist denn da los??????????
Was macht denn der searchbot genau? Und der findet die Beiträge, die die SMF-Suche nicht findet?
Er verbindet die Suche von Joomla mit SMF. Sprich, er sucht beides ab, Joomla-Content und Forum.
Der Bot nutzt eigentlich die Suche vom Forum und fügt es mehr oder weniger ins Ergebnis ein.
Und da funktioniert es? Mal getestet?
Ja, hab die Begriffe, welche von den Usern nicht gefunden werden (z.B. ihre eigenen Themen), benutzt. Und alle gefunden!!!! Musste zwar ein wenig suchen, da der Bot erst die Ergebnisse vom Forum nach dem Joomla-Content anzeigt, oder auch mal zwischendurch.. ;)
Also funktioniert die Bot-Suchge 100%, wenn man die gleichen Suchbegriffe ohne Bot benutzt, dann passt es nicht mehr? Spannend!
Wenn ich die Suche von Joomla mit installierem Bot nutze!!! Dann finde ich das was gefunden werden soll.
Die Suche/Ergebnisse mit der Forums-Suche bleibt unverändert.
Bei uns spinnt die Suche wohl anscheinend inzwischen auch wieder rum :-\
ich hab für mich das Problem nach langer Suche endlich gelöst..
Hintergrund: mein Forum war früher mal ein PHPBB, daß ich auf SMF migriert hatte.. beim Import sind offensichtlich einige Keys / Indizes der Tabelle smf_messages verlorengegangen.
hab die nun analog einem frisch installierten SMF wieder eingespielt:
ALTER TABLE smf_messages ADD UNIQUE topic (ID_TOPIC,ID_MSG)
ALTER TABLE smf_messages ADD UNIQUE ID_BOARD (ID_BOARD,ID_MSG)
danach hab ich alle Tabellen mit smf_search_log_* einmalig geleert (nicht gelöscht!!!).
seitdem funktioniert die Suche scheinbar absolut einwandfrei
ggf. habt ihr ja das gleiche Prob?!?
Ne, dass scheint es bei uns nicht zu sein..
Haben zwar vom rapidforum über ein phpbb ins SMF konvertiert. Die Indizes sind aber richtig.
Und ich hab nicht konvertiert.
Quote from: nehcregit on August 21, 2007, 02:14:41 PM
Und ich hab nicht konvertiert.
Wäre ja auch bei euch imho nicht sinnvoll! ;)
@Haschi
was ist denn das für ein searchbot? Der würde mich ja auch interessieren. Wo bekomm ich den her? Und lässt der sich problemlos in Joomla installieren?
Gruß Ferrika
Den kannst du bei joomlaos.de oder joomlahacks.com runterladen. Der Bot ist aber m.E.n. nicht so wirklich sinnvoll, da im Ergebniss dann erst der Content kommt, dann irgendwo Ergebnisse ausm Forum.
Wofür ist eigentlich die Tabelle smf_log_search_messages? Die ist bei mir leer.
Ich hab den auch gerade da gefunden und den Gedanken sofort wieder verworfen. Wenn ich schon den Satz lese: meine SMF-Tabellen müssen in der gleichen Datenbank wie Joomla liegen... hat sich das schon erledigt *g
Danke :D
LG Ferrika
Hö?! Tun sie doch bei dir?!
Quote from: haschi on August 21, 2007, 02:44:47 PM
Wofür ist eigentlich die Tabelle smf_log_search_messages? Die ist bei mir leer.
Öhm... Ich hab dort 10.943 Einträge :o
Dem Aussehen nach könnten es die zu einer Suche gefundenen Beiträge sein, denn die Tabelle besteht ja aus zwei Spalten mit der search_id und der dazugehörigen message_id. Ist aber nur eine Vermutung.
QuoteHö?! Tun sie doch bei dir?!
Meintest Du mich damit, Haschi? Wenn ja: Nein, tun sie nicht. Ich hab die Orstio-Bridge, die verlangt sowas nicht von mir :D
Quote from: nehcregit on August 21, 2007, 06:15:39 PM
Dem Aussehen nach könnten es die zu einer Suche gefundenen Beiträge sein, denn die Tabelle besteht ja aus zwei Spalten mit der search_id und der dazugehörigen message_id. Ist aber nur eine Vermutung.
so hab ich das auch interpretiert, hab sie deshalb einfach kopiert, danach das original geleert..
nochmal zum Thema indizes: habt ihr mit nem frisch installierten 1.1.13 verglichen, ob wirklich alle Uniques und Indexe richtig gesetzt sind? ich bin auch nicht 100% sicher, ob es durch das konvertieren vom phpbb kam oder durch die Updates von 1.1 RC3 bis zum 1.1.13
wenn ihr nicht zuviele Hacks im Board verbaut habt würd noch zum folgenden Test raten: export aller daten (ohne tabellen-Struktur) und import in ein frisch instlaliertes SMF 1.1.13
lol, hatte auch schon wieder probs aber hab nun hoffentlich die Lösung? bisher läuft meine Suche 1A :) (hoffe mal, daß es so bleibt..
was ich geändert hab:
1. dem user, der auf die DB zugreift volle Rechte gegeben. Confixx hatte den ohne CREATE_TEMPORARY_TABLES angelegt, wie ich aber hier im Forum gelesen hab wird das wohl gebraucht..
2. die SourcesSearch.php abgeändert:
suche
$canDoBooleanSearch = version_compare(mysql_get_server_info($db_connection), '4.0.1', '>=') == 1;
in der Zeile danach eingefügt:
$canDoBooleanSearch = 1;
Edit: ich bin mir nicht sicher, ob man das braucht.. ich hatte den Verdacht, daß das Board meine MySQL-Version nicht richtig interpretieren wollte weil der Server zwar > 4.0.1 ist aber der Client noch 3.23.57
3. im Admin-Interface unter Wartung - unwichtige Protokolle löschen
und siehe da die Suche funktioniert.
Hoffe, daß es so bleibt und auch dem ein oder anderen hilft ;)
Gruß
Thorsten
Hmm.. Weder das eine noch das andere zeigt Wirkung.
Der DB-User hat 'ALL PRIVILEGES' auf seine Datenbank. Daher ist da schonmal nicht das Problem.
Also die Punkte 1, 2 und 3 scheinen das Problem generell nicht zu lösen. Schade... Hat sich erst sher schön gelesen.. :(
Quote from: nehcregit on August 21, 2007, 06:15:39 PM
Öhm... Ich hab dort 10.943 Einträge :o
Dem Aussehen nach könnten es die zu einer Suche gefundenen Beiträge sein, denn die Tabelle besteht ja aus zwei Spalten mit der search_id und der dazugehörigen message_id. Ist aber nur eine Vermutung.
Hmm.. Komisch. Bei sind folgende Tabellen leer:
smf_log_search_messages
smf_log_search_topicssmf_log_search_words läuft mit 18.768.356 Einträgen fast über! :D
@Haschi: leere mal die Tabelle smf_log_search_words per Hand, bin davon ausgegangen, daß das Log-Löschen im Admin-Bereich selbiges tut. da sind nämlich alte & damit falsche Suchergebnisse gecached ;)
ausserdem solltest du lnoch im Wartungsbereich "Fehler finden und reparieren" durchlaufen lassen, ggf. sind da auch noch Gründe enthalten warum es nich geht.
PS: ich nutze einen FULLLTEXT-Index, hab auch den Haken gesetzt, daß das Forum den Index nutzen muss.
@ThorstenE
Alles probiert. Hab auch mal alle search_logs geleert. Leider auch hier kein Ergebniss.
Kann es auch an der Kollation liegen?! Würde aber eher keinen Sinn machen.
So.. Wir haben jetzt diesen Mod (http://custom.simplemachines.org/mods/index.php?mod=887) installiert und siehe da, es scheint zu gehen!! Bis jetzt haben wir nichts gefunden, was wir vorher nicht gefunden haben.
Da frag ich mich nur, wieso SMF das nicht so gut hin bekommt?! Naja, wir werden die Wochen noch testen und dann in englische Supportforum schreiben.
Quote from: haschi on September 19, 2007, 05:25:06 AM
So.. Wir haben jetzt diesen Mod (http://custom.simplemachines.org/mods/index.php?mod=887) installiert und siehe da, es scheint zu gehen!! Bis jetzt haben wir nichts gefunden, was wir vorher nicht gefunden haben.
Da frag ich mich nur, wieso SMF das nicht so gut hin bekommt?! Naja, wir werden die Wochen noch testen und dann in englische Supportforum schreiben.
*grummel*
Ja... haben "wir" auch...nun kommt bei jedem Drücken auf den Suche-Button:
"Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in .../webseiten/Sources/Search.php on line 1241"
Prima Mod :( Aber ob die Fehlermeldung oder wie vorher: bei jeder Suche IMMER 0 (Null) Treffer-
was macht´s aus?
Mann, hab ich einen sch.. Frust wegen dieser Suchfunktion!
Hast du den Mod installieren lassen oder per Hand eingepflegt? Prüf mal, ob die Änderungen alle so übernommen wurden wie sie in der xml stehen.
Ansonsten den Mod deinstallieren und per Hand einpflegen.
Neee- installieren lassen geht schon seit einer Ewigkeit nicht mehr und ich frickel
auch nicht mehr rum an dem :'(-Teil, seit dem jemand mal Sternzeichen haben wollte
und ich dachte, daß so ein Mod mal grad eben so sich wieder deinstallieren lässt,
nachdem wir erkannt haben, daß die Sternzeichen auf Türkisch unter den Usernamen
angezeigt werden...
Also eben auf die Platte lokal runtergeladen und dann halt hochgeladen und installiert,
wobei er da schon anfing zu mosern, ein Fehler würde in der Installation sein, was ich
ignorierte, da die Suche bei uns ja bisher NIE funktioniert hat (egal mit welchen Optionen,
ob erzwungen oder nicht mit leeren Indexen oder neuerstellten oder oder oder)
und es mir deshalb egal war, da es ja nur besser werden kann.
Konnte ja keiner Ahnen, daß er gleich so abschmiert :(
Mann, ich hab mittlerweile so einen Frust mit dem Forum, daß ich das am liebsten
echt alles schmeißen würde- aber dann habe ich ein paar Semester, die mir aufs Dach
steigen würden, da wir semesterübergreifend darüber kommunizieren :(
Vielleicht studiere ich als nächstes mal Informatik, damit ich das mit den Mods, einbinden
und den Fehlermeldungen irgendwann verstehe :(
Einen Vorschlag habe ich aber an die Macher:
macht doch eine 1,99 EUR/Min Hotline und verdient euch so etwas dazu- mir wären
10 Min an der Hotline mehr wert, als sich stundenlang versuchen hier durch mir unverstänliche
Texte zu wurschteln und dann doch nur mehr zu destabilisieren im eigenen Forum als zu verbessern...
Ich werd meinen Studies dann wohl sagen, daß sie da nicht draufklicken sollen und ich die neue Version
abwarten will, wo hoffentlich der Import klappen wird und die Suche auch wieder funktionieren wird.
FRUST- einfach nur FRUST...so lange konnt ich die Finger still halten und hab da nichts mehr dran gemacht
und jetzt mal die freie Zeit für was gutes versucht zu nutzen und MAL WIEDER geht es in die Grütze.
Mannomannomann >:(
Ts ts ts, s--k. Da machst du anscheinend aus Unwissenheit, was ich dir zwar nicht vorwerfen möchte, was sich aber beseitigen lässt, mit dem Installieren von Mods so ziemlich alles verkehrt, was man verkehrt machen kann. Ich bin mir zu 100% sicher, alle Probleme mit Mods, die du bisher hattest, lassen sich ruck-zuck lösen.
Als Lektüre empfehle ich dir mal diese FAQs: http://www.smfportal.de/index.php/board,42.0/action,faq.html
Dann bist du schonmal etwas schlauer.
Sorry- aber wenn ich jetzt vor den anstehenden Klausuren noch mehr rumfrickel und
allen mal grad die Möglichkeit nehme, durch Scripte zu blättern oder noch die eine oder
andere fachliche Frage zu stellen, dann werde ich gelüncht :)
Oh- ich bin hoffentlich bald viel schlauer- es hat sich ein barmherziger User von hier gefunden,
der mir helfen möchte und an dieser Stelle schon mal einen riesigen Dank!
So, ich schließe mich hier mal der allgemeinen Frustration über die Suchfunktion an. Auch in meinem Forum funktioniert diese nicht.
Die Probleme sind die selben wie hier schon beschrieben, teils werden alte, teils neue Threads nicht gefunden. Auch sehr häufig auftretende Wörter werden manchmal nicht gefunden.
Ich hab schon so einiges versucht und bin mittlerweile mit meinem Latein am Ende.
Erstmal ein paar technische Infos. Server läuft auf Debian Etch, somit PHP 5.2.0-8+etch10, MySQL 5.0.32, SMF 1.1.4.
Es handelt sich um ein konvertiertes Forum - das lief von 2002 bis Mitte 2007 als phpBB, und wurde dann von mir auf SMF 1.1.3 konvertiert, danach auf 1.1.4 aktualisiert als diese erschien.
Was hab ich schon alles versucht? Ich verwende diesen Suchverbesserungs-Mod, der hier schon empfohlen wurde. Ich hab die Datenbank gedumpt (also den reinen Tabelleninhalt ohne Struktur) und wieder in eine frische 1.1.4er Installation eingespielt. Mein DB-User hat alle Berechtigungen in seiner DB.
Ich verwende auch nicht viele Mods, und erst recht keinen der die Search.php verändert hätte - abgesehen von oben erwähntem natürlich. ;)
Ich verwende einen Volltext-Index, aber auch mit benutzerdefiniertem Index oder ganz ohne Index ändert sich die Lage nicht. Auch die oben erwähnten search_log_Tabellen hab ich immer mal wieder geleert.
Bisher waren alle diese Versuche erfolglos, die Suche funktioniert immer noch nicht besser als vorher. Ich weiß nicht mehr wirklich was ich noch probieren soll...
Wäre unser Forum online, würde ich dir einen Link mitteilen, der das Problem vielleicht auch bei dir lösen würde. Zumindest bei uns hat es etwas gebracht, dass wir temporäre Tabellen anlegen dürfen (Hoster fragen). Seitdem funktioniert die Suche fehlerfrei.
ich fasse einfach nochmal zusammen:
Der Fehler in der Suche äußert sich in der Form, daß man Suchergebnisse findet, die mit dem eingegebenen Suchbegriff nichts zu tun haben. Hierbei handelt es sich um Suchergebnisse aus vorherigen Suchen
Das Problem läßt sich (bei der Version 1.1.4) wie folgt lösen:
1) der Datenbank-User MUSS das Recht haben TEMPORARY_TABLES zu erstellen. Das kann man per PHPMyAdmin relativ einfach testen, im SQL-Fenster einfach folgenden Code eingeben:
CREATE TEMPORARY TABLE tmp (meine_spalte INT(4))
kommt die folgende Meldung ist das Recht vorhanden: Ihr SQL-Befehl wurde erfolgreich ausgeführt.
kommt die Meldung: access denied hat der User das Recht nicht!
hier hilft dann nur: Webhoster anschreiben und ihn bitten, das Recht einzurichten. Die Hosting-Software Confixx z.B. vergibt dieses Recht NICHT automatisch. Wer also bei einem Hoster sein Forum hat, der mit Confixx arbeitet, wird das Problem möglicherweise haben.
Wenn Punkt 1) sichergestellt ist (und nur dann) kann man mit Punkt 2) weitermachen:
2) im ACP - Wartung - den Punkt "unwichtige Protokolle löschen" aufrufen. Dadurch werden alle vorherigen Suchergebnisse aus den Tabellen bereinigt.
3) Einen Suchindex erstellen vom TYP "FULLTEXT". Der Volltext-Index hat den Vorteil, daß er die Suche zum einen deutlich schneller macht und gegenüber dem Custom-Index den Vorteil, daß er auch für Begriffe funktioniert, die nach Erzeugung des Indexes in die Datenbank gespeichert werden (neue Beiträge mit neuen Suchwörtern).
Empfehlen würde ich zudem den Suchindex zu erzwingen, da bei Wörtern unter 4 Zeichen sonst ohne Index gesucht wird. Das ist bei großen Foren extrem belastend für den Server.
Die oben genannte Lösung wurde bei mehreren Foren, die vorher enorme Probleme mit der Suche hatten, erfolgreich umgesetzt.
Gruß
Thorsten
Hallo!
Wir testen seit einigen Wochen ausgiebig SMF2. Nur was uns wieder auffällt... Die Suche findet nicht das was man finden möchte!
Gleiches Beispiel wie zum Anfang. Die Suche findet Einträge mit dem Suchbegriff "Subwoofer", wiederum keine Eintrage mit "Subwoo". Sucht man jetzt nach dem Wort "mit", findet er alles wo "mit" drin vorkommt, sei es "Damit", "Miteinander" o.ä.
Also irgendwas stimmt da nicht. Liegt es evtl. wirklich am Server? Hab MySQL und PHP5 auf Aktualität geprüft, beides die aktuellste Version.
Gruß
Marco
hostest du das Forum auf einem eigenen Server? dann solltest du dir mal Sphinx ansehen. mehr dazu findest du in dem BigBoards Bereich...
Ja, wir haben nen eigenen Server. Hab mir Sphinx schon mal angesehen, aber noch nicht angewendet.
Was ist denn Sphinx?
http://www.sphinxsearch.com/ interessant für große Foren, die auf dedizierten Servern laufen..
aha danke