Seite 1 von 1

[CON-1967] Error in Search Class bei "Like" und "Exact"

Verfasst: Do 6. Nov 2014, 09:48
von CinKon
Der Fehler in der Class cSearch besteht leider immernoch (Contenido 4.9.4).
Wenn man als Suchmethode "like" oder "exact" verwendet, statt "regexp".
Lässt sich aber ganz einfach beheben:

contenido/classes/class.search.php:950

Code: Alles auswählen

// like search
$search_like = implode(" OR keyword LIKE ", $tmp_searchwords);
$kwSql = "keyword LIKE '" . $search_like;
Ersetzen mit:

Code: Alles auswählen

// like search
$search_like = implode("% OR keyword LIKE %", $tmp_searchwords);
$kwSql = "keyword LIKE '%" . $search_like."%'";
Schöne Grüße

Lars

Re: BUG [CON-939] Error in Search Class bei "Like" und "Exac

Verfasst: Di 11. Nov 2014, 11:10
von Oldperl
Hi,

der SuchIndex (con_keywords) funktioniert in vielen Bereichen nicht richtig bzw. hat seine Schwächen. Auch die cApi-Klassen der Keywords haben bis zur aktuellen 4.9.4 einen Bug :arrow: http://forum.contenido.org/viewtopic.php?f=94&t=35325

Daher arbeite ich momentan an einem entsprechenden SearchIndex-Plugin, welches unter anderem die Möglichkeiten zum Löschen und Neu-Indizieren der Keywords pro Sprache in einem eigenen Backend-Bereich bieten wird, und die entsprechenden Core-Klassen ersetzt. Ob und inwieweit die vorhandenen Such-Module kompatibel sind/bleiben ist noch nicht ganz klar, da die momentane Core-Version der Suche sowohl bei Encoding als auch bei Sonderzeichen und DB-Escaping diverse Probleme hat, die ich beim Plugin anders lösen muss/musste. Auch überlege ich dem Such-Modul eine AJAX-gestützte Autovervollständigung zu spendieren.
Kommende Ausbaustufen sollen dabei sowohl individuelle Stop-Word-Listen erhalten, aber auch allgemeine Stop-Wörter und "Unwanted"-Keywords ausschließen können.
Das Plugin ist bisher nur zu einem Drittel finanziert, solltet Ihr große Seite haben die auf eine funktionierende Suche angewiesen sind so könnt ihr euch ja bei mir melden. Auch den einen oder anderen Tester suche ich noch. Als Tester würdet ihr das Plugin je nach Umfang eures Feedbacks dann natürlich ermäßigt bekommen.

Gruß aus Franken

Ortwin

Re: [CON-1967] Error in Search Class bei "Like" und "Exact"

Verfasst: Do 13. Nov 2014, 09:10
von frederic.schneider_4fb
Vielen Dank, lieber Lars, ich habe das als Ticket für CONTENIDO 4.9.6 angelegt. Im Übrigen gibt es die class.search.php an dieser Stelle nicht mehr, sondern sie ist in den Ordner contendio/classes/search gewandert und konkret unser "Problem" in den Zeilen 339 bis 343 anzutreffen.

Re: [CON-1967] Error in Search Class bei "Like" und "Exact"

Verfasst: Do 15. Jan 2015, 12:30
von frederic.schneider_4fb
In der neuen Version ist der Fehler behoben

Re: [CON-1967] Error in Search Class bei "Like" und "Exact"

Verfasst: Do 15. Jan 2015, 16:26
von McHubi
@Frederic: Habt ihr hier auch gleich das Problem behoben, dass nicht alle Content-Elemente durchsucht werden? Bisher wurden nämlich nur Headlines und keine Text-Elemente durchforstet...
-> http://forum.contenido.org/viewtopic.ph ... 13#p164605

Re: [CON-1967] Error in Search Class bei "Like" und "Exact"

Verfasst: Fr 16. Jan 2015, 14:20
von frederic.schneider_4fb
Ich bin gerade nicht im Büro und kann mich nicht daran erinnern, dass wir das behoben haben. Melde mich nächste Woche dazu!

Re: [CON-1967] Error in Search Class bei "Like" und "Exact"

Verfasst: Do 12. Feb 2015, 12:46
von frederic.schneider_4fb
Wir haben an der Stelle Änderungen vorgenommen, McHubi. Bitte überprüfe in der Version 4.9.7, sobald sie erhältlich ist, ob es nun bei Dir fuktioniert